Skip to content

Task: AIDL Versioning for RDK-E HAL #75

@aniketp1809

Description

@aniketp1809

Problem/Opportunity

Create a framework to implement AIDL Versioning for RDK-E HAL.

  1. Update API: Validate and create a snapshot of the current APIs
  2. Freeze API: Freeze the snapshot of the current API to the next version
  3. Generate Sources: Generate sources which has implementation for getInterfaceVersion()

Proposed Solution

  1. Interfaces will be defined in YAML or JSON
  2. A framework will be designed based on Python, which will read these definitions to carry out the required operation.
  3. Operations: update_api, freeze_api, generate_sources, generate interface library dependency tree
  4. CMake configuration will be written to generate libraries as the main project requires.

Acceptance Criteria (Optional)

AC1 - AIDL interface version management for RDK-E
The AIDL build system shall support snapshotting an AIDL interface version as a new version and perform backwards compatibility checks.

AC2 - Interface Version Checking through Binder Support
An application shall be able to call getInterfaceVersion() on a binder service to retrieve its AIDL version.

AC3 - Provide Documentation for AIDL Versioning
Documentation shall be created to provide step-by-step instructions on how to create AIDL interface version snapshots in an RDK environment.

Additional Notes (Optional)

No response

Sub-issues

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

Projects

Status

In Progress

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions