Skip to content

Commit

Permalink
Merge pull request #309 from rdkcentral/next
Browse files Browse the repository at this point in the history
feat: Release 1.4.0
  • Loading branch information
kevinshahfws authored Sep 23, 2024
2 parents 9c0cae4 + ed1d3c1 commit 6b8c288
Show file tree
Hide file tree
Showing 30 changed files with 684 additions and 248 deletions.
18 changes: 12 additions & 6 deletions .github/workflows/release-github.yml
Original file line number Diff line number Diff line change
Expand Up @@ -86,31 +86,37 @@ jobs:
npm run dist
- name: Check if semantic-release created a build
id: check_build
uses: andstor/file-existence-action@v2
uses: actions/github-script@v6
with:
files: './src/sdks/core/dist/lib/firebolt.mjs'
script: |
const fs = require('fs');
const path = './src/sdks/core/dist/lib/firebolt.mjs';
return fs.existsSync(path);
- name: File Existence Output
run: |
echo "File exists: ${{ steps.check_build.outputs.result }}"
- name: Release Firebolt SDKs to NPM
if: steps.check_build.outputs.files_exists == 'true' && github.event_name != 'pull_request' && (github.ref_name != 'main' || github.event_name == 'workflow_dispatch')
if: steps.check_build.outputs.result == 'true' && github.event_name != 'pull_request' && (github.ref_name != 'main' || github.event_name == 'workflow_dispatch')
env:
NPM_TOKEN: ${{ secrets.SEMANTIC_RELEASE_NPM_TOKEN }} # <-- Allows semantic-release to publish to npm without 2 factor auth.
run: |
npm --version
echo "NPM DIST TAG :: " $NPM_DIST_TAG
npm publish --tag $NPM_DIST_TAG --workspaces
- name: Dry-run Firebolt SDKs to NPM
if: steps.check_build.outputs.files_exists == 'true' && (github.ref_name == 'main' && github.event_name != 'workflow_dispatch')
if: steps.check_build.outputs.result == 'true' && (github.ref_name == 'main' && github.event_name != 'workflow_dispatch')
env:
NPM_TOKEN: ${{ secrets.SEMANTIC_RELEASE_NPM_TOKEN }} # <-- Allows semantic-release to publish to npm without 2 factor auth.
run: npm publish --tag $NPM_DIST_TAG --workspaces --dry-run
- name: Checkout firebolt GitHub.io repository
if: steps.check_build.outputs.files_exists == 'true'
if: steps.check_build.outputs.result == 'true'
env:
GITHUB_TOKEN: ${{ secrets.SEMANTIC_RELEASE_BOT_PAT }} # <-- Allows semantic-release-bot to push changes to protected branches
run: |
cd /tmp
git clone https://rdkcentral:[email protected]/rdkcentral/firebolt.git ./firebolt-docs
- name: Release docs to GitHub.io
if: steps.check_build.outputs.files_exists == 'true' && (github.ref_name == 'main' || github.ref_name == 'next' || github.ref_name == 'next-major' || github.event_name == 'pull_request')
if: steps.check_build.outputs.result == 'true' && (github.ref_name == 'main' || github.ref_name == 'next' || github.ref_name == 'next-major' || github.event_name == 'pull_request')
env:
GITHUB_TOKEN: ${{ secrets.SEMANTIC_RELEASE_BOT_PAT }} # <-- Allows semantic-release-bot to push changes to protected branches
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/run-standalone-mfos-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
./.github/workflows/utils.sh runTests
- name: Upload report.json as an artifact
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: report
path: ${{ github.workspace }}/report
Expand Down
105 changes: 105 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,108 @@
# [1.4.0-next.12](https://github.com/rdkcentral/firebolt-apis/compare/v1.4.0-next.11...v1.4.0-next.12) (2024-09-20)


### Bug Fixes

* Added deprecation note in screen resolution method ([#323](https://github.com/rdkcentral/firebolt-apis/issues/323)) ([e146c43](https://github.com/rdkcentral/firebolt-apis/commit/e146c4343d9c7989cd9ca1578a5efae4c346f1f3))

# [1.4.0-next.11](https://github.com/rdkcentral/firebolt-apis/compare/v1.4.0-next.10...v1.4.0-next.11) (2024-09-20)


### Bug Fixes

* Reverted App selection tag change ([#322](https://github.com/rdkcentral/firebolt-apis/issues/322)) ([eee90e4](https://github.com/rdkcentral/firebolt-apis/commit/eee90e4f17deedc689ff858021199de8de772c8e))

# [1.4.0-next.10](https://github.com/rdkcentral/firebolt-apis/compare/v1.4.0-next.9...v1.4.0-next.10) (2024-09-19)


### Features

* Add global subscribe & HDMI tests to manage test app ([#320](https://github.com/rdkcentral/firebolt-apis/issues/320)) ([63962ab](https://github.com/rdkcentral/firebolt-apis/commit/63962ab3131358f77e97af73bc3e4207f958e5fb))

# [1.4.0-next.9](https://github.com/rdkcentral/firebolt-apis/compare/v1.4.0-next.8...v1.4.0-next.9) (2024-09-19)


### Features

* Fix Core SDK test app ([#321](https://github.com/rdkcentral/firebolt-apis/issues/321)) ([3a78534](https://github.com/rdkcentral/firebolt-apis/commit/3a78534480928b14723e18eb4f90304de4077160))

# [1.4.0-next.8](https://github.com/rdkcentral/firebolt-apis/compare/v1.4.0-next.7...v1.4.0-next.8) (2024-09-18)


### Bug Fixes

* Modified device.hdr description ([#319](https://github.com/rdkcentral/firebolt-apis/issues/319)) ([fd2bfb0](https://github.com/rdkcentral/firebolt-apis/commit/fd2bfb04d349e634f96d614713399467f238e1b3))

# [1.4.0-next.7](https://github.com/rdkcentral/firebolt-apis/compare/v1.4.0-next.6...v1.4.0-next.7) (2024-09-18)


### Bug Fixes

* Addressed architectural review comments ([#316](https://github.com/rdkcentral/firebolt-apis/issues/316)) ([a89275a](https://github.com/rdkcentral/firebolt-apis/commit/a89275a1f6b204e0626a6267f5096116094cb520))

# [1.4.0-next.6](https://github.com/rdkcentral/firebolt-apis/compare/v1.4.0-next.5...v1.4.0-next.6) (2024-09-17)


### Features

* Add OpenRPC to generated C++ SDK ([#314](https://github.com/rdkcentral/firebolt-apis/issues/314)) ([6ed96cb](https://github.com/rdkcentral/firebolt-apis/commit/6ed96cb2a83216baf1aacedf220e9a83beb50a68))

# [1.4.0-next.5](https://github.com/rdkcentral/firebolt-apis/compare/v1.4.0-next.4...v1.4.0-next.5) (2024-09-17)


### Bug Fixes

* Updated the artifact upload version for workflow ([#317](https://github.com/rdkcentral/firebolt-apis/issues/317)) ([ef9b441](https://github.com/rdkcentral/firebolt-apis/commit/ef9b441590229e3f4d5abb1eddd8068f2ed997d4))

# [1.4.0-next.4](https://github.com/rdkcentral/firebolt-apis/compare/v1.4.0-next.3...v1.4.0-next.4) (2024-09-12)


### Bug Fixes

* Added individual sdk openrpcs to the doc specification ([#311](https://github.com/rdkcentral/firebolt-apis/issues/311)) ([ace1d64](https://github.com/rdkcentral/firebolt-apis/commit/ace1d644cac114c457a739a4e4cdfe8990a96fc8))

# [1.4.0-next.3](https://github.com/rdkcentral/firebolt-apis/compare/v1.4.0-next.2...v1.4.0-next.3) (2024-09-03)


### Bug Fixes

* Updated xrn:firebolt:capability:secondscreen:protocol to should ([#310](https://github.com/rdkcentral/firebolt-apis/issues/310)) ([1895fe6](https://github.com/rdkcentral/firebolt-apis/commit/1895fe69d91f7f31a955103c80a17f1f4beb149a))

# [1.4.0-next.2](https://github.com/rdkcentral/firebolt-apis/compare/v1.4.0-next.1...v1.4.0-next.2) (2024-09-03)


### Bug Fixes

* CI fix for file exists ([#308](https://github.com/rdkcentral/firebolt-apis/issues/308)) ([b44c11a](https://github.com/rdkcentral/firebolt-apis/commit/b44c11ac3fd96e0a035bf306a064a1acf8ce654f))

# [1.4.0-next.1](https://github.com/rdkcentral/firebolt-apis/compare/v1.3.1-next.3...v1.4.0-next.1) (2024-09-03)


### Features

* Spec and Doc fixes for Release 1.4.0 ([#304](https://github.com/rdkcentral/firebolt-apis/issues/304)) ([191664b](https://github.com/rdkcentral/firebolt-apis/commit/191664b18355cca130d783f850727caf058e116a))

## [1.3.1-next.3](https://github.com/rdkcentral/firebolt-apis/compare/v1.3.1-next.2...v1.3.1-next.3) (2024-08-30)


### Bug Fixes

* Adjust type in CPP device template due to openrpc change ([#307](https://github.com/rdkcentral/firebolt-apis/issues/307)) ([1f10a15](https://github.com/rdkcentral/firebolt-apis/commit/1f10a154c45d1c5f6fff45448e0a1d6db243275e))

## [1.3.1-next.2](https://github.com/rdkcentral/firebolt-apis/compare/v1.3.1-next.1...v1.3.1-next.2) (2024-08-23)


### Bug Fixes

* Bump firebolt-openrpc to fix typescript ([#305](https://github.com/rdkcentral/firebolt-apis/issues/305)) ([62887cf](https://github.com/rdkcentral/firebolt-apis/commit/62887cf73b2e2202446e9a7cce6ec26d8d5a5842))

## [1.3.1-next.1](https://github.com/rdkcentral/firebolt-apis/compare/v1.3.0...v1.3.1-next.1) (2024-08-19)


### Bug Fixes

* Spec and Doc fixes ([#302](https://github.com/rdkcentral/firebolt-apis/issues/302)) ([6010a85](https://github.com/rdkcentral/firebolt-apis/commit/6010a85e9883480aba71378391f5b6223645fb28))

# [1.3.0](https://github.com/rdkcentral/firebolt-apis/compare/v1.2.0...v1.3.0) (2024-08-12)


Expand Down
18 changes: 9 additions & 9 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@firebolt-js/sdks",
"version": "1.3.0",
"version": "1.4.0-next.12",
"description": "The Firebolt JS SDK",
"type": "module",
"bin": {
Expand Down Expand Up @@ -45,7 +45,7 @@
"devDependencies": {
"@commitlint/cli": "^17.0.3",
"@commitlint/config-conventional": "^17.0.3",
"@firebolt-js/openrpc": "3.1.0",
"@firebolt-js/openrpc": "3.1.1",
"@firebolt-js/schemas": "2.0.0",
"@saithodev/semantic-release-backmerge": "^3.2.0",
"@semantic-release/changelog": "^6.0.1",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,22 +24,23 @@ This document is written using the [IETF Best Common Practice 14](https://www.rf
The key words "**MUST**", "**MUST NOT**", "**REQUIRED**", "**SHALL**", "**SHALL NOT**", "**SHOULD**", "**SHOULD NOT**", "**RECOMMENDED**", "**NOT RECOMMENDED**", "**MAY**", and "**OPTIONAL**" in this document are to be interpreted as described in [BCP 14](https://www.rfc-editor.org/rfc/rfc2119.txt) [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.

## 2. Table of Contents
- [1. Overview](#1-overview)
- [2. Table of Contents](#2-table-of-contents)
- [3. Open RPC Extensions](#3-open-rpc-extensions)
- [3.1. Provided By Extension](#31-provided-by-extension)
- [4. Routing App pass-through APIs](#4-routing-app-pass-through-apis)
- [4.1. No available providers](#41-no-available-providers)
- [4.2. Direct pass-through](#42-direct-pass-through)
- [4.4. Pass-through notifications](#44-pass-through-notifications)
- [5. Provider Candidates](#5-provider-candidates)
- [6. Best Candidate](#6-best-candidate)
- [7. Result Transformations](#7-result-transformations)
- [8. Provider Parameter Injection](#8-provider-parameter-injection)
- [9. API Gateway](#9-api-gateway)
- [10. Example: User Interest](#10-example-user-interest)
- [10.1. User Interest Pull](#101-user-interest-pull)
- [10.2. User Interest Push](#102-user-interest-push)
- [App Pass-through APIs](#app-pass-through-apis)
- [1. Overview](#1-overview)
- [2. Table of Contents](#2-table-of-contents)
- [3. Open RPC Extensions](#3-open-rpc-extensions)
- [3.1. Provided By Extension](#31-provided-by-extension)
- [4. Routing App pass-through APIs](#4-routing-app-pass-through-apis)
- [4.1. No available providers](#41-no-available-providers)
- [4.2. Direct pass-through](#42-direct-pass-through)
- [4.4. Pass-through notifications](#44-pass-through-notifications)
- [5. Provider Candidates](#5-provider-candidates)
- [6. Best Candidate](#6-best-candidate)
- [7. Result Transformations](#7-result-transformations)
- [8. Provider Parameter Injection](#8-provider-parameter-injection)
- [9. API Gateway](#9-api-gateway)
- [10. Example: User Interest](#10-example-user-interest)
- [10.1. User Interest Pull](#101-user-interest-pull)
- [10.2. User Interest Push](#102-user-interest-push)

## 3. Open RPC Extensions

Expand Down Expand Up @@ -460,4 +461,4 @@ Platform Method:
}
]
}
```
```
20 changes: 20 additions & 0 deletions src/js/github.io/index.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,8 @@ packageJson.workspaces.forEach(async workspace => {
const specification = await readJson(path.join('dist', 'firebolt-specification.json'))
const openrpc = await readJson(path.join('dist', 'firebolt-open-rpc.json'))
const corerpc = await readJson(path.join('dist', 'firebolt-core-open-rpc.json'))
const managerpc = await readJson(path.join('dist', 'firebolt-manage-open-rpc.json'))
const discoveryrpc = await readJson(path.join('dist', 'firebolt-discovery-open-rpc.json'))

const capabilities = () => {
const getOrCreateCapMethodList = (capabilities, c) => capabilities[c] = capabilities[c] || { uses: [], manages: [], provides: [] }
Expand Down Expand Up @@ -170,6 +172,24 @@ if (version === 'latest') {
writeJson(path.join(parsedArgs.output, 'requirements', packageJson.version, 'specifications', 'firebolt-open-rpc.json'), openrpc)
}

// this is the firebolt Core OpenRPC spec JSON
writeJson(path.join(parsedArgs.output, 'requirements', version, 'specifications', 'firebolt-core-open-rpc.json'), corerpc)
if (version === 'latest') {
writeJson(path.join(parsedArgs.output, 'requirements', packageJson.version, 'specifications', 'firebolt-core-open-rpc.json'), corerpc)
}

// this is the firebolt Manage OpenRPC spec JSON
writeJson(path.join(parsedArgs.output, 'requirements', version, 'specifications', 'firebolt-manage-open-rpc.json'), managerpc)
if (version === 'latest') {
writeJson(path.join(parsedArgs.output, 'requirements', packageJson.version, 'specifications', 'firebolt-manage-open-rpc.json'), managerpc)
}

// this is the firebolt Discovery OpenRPC spec JSON
writeJson(path.join(parsedArgs.output, 'requirements', version, 'specifications', 'firebolt-discovery-open-rpc.json'), discoveryrpc)
if (version === 'latest') {
writeJson(path.join(parsedArgs.output, 'requirements', packageJson.version, 'specifications', 'firebolt-discovery-open-rpc.json'), discoveryrpc)
}

function channel(version) {
const parts = version.split("-")

Expand Down
6 changes: 3 additions & 3 deletions src/json/firebolt-specification.json
Original file line number Diff line number Diff line change
Expand Up @@ -147,9 +147,6 @@
"negotiable": false
}
},
"xrn:firebolt:capability:privacy:advertising": {
"level": "could"
},
"xrn:firebolt:capability:metrics:distributor": {
"level": "could"
},
Expand All @@ -158,6 +155,9 @@
},
"xrn:firebolt:capability:account:uid": {
"level": "should"
},
"xrn:firebolt:capability:secondscreen:protocol": {
"level": "should"
}
},
"apis": {}
Expand Down
24 changes: 14 additions & 10 deletions src/openrpc/_internal.json
Original file line number Diff line number Diff line change
Expand Up @@ -35,15 +35,7 @@
"name": "session",
"summary": "Info about the SDK/FEE session",
"schema": {
"type": "object",
"required": ["version"],
"properties": {
"version": {
"$ref": "https://meta.comcast.com/firebolt/types#/definitions/SemanticVersion",
"description": "The semantic version of the FEE."
}
},
"additionalProperties": false
"$ref": "#/components/schemas/InitializeResult"
}
},
"examples": [
Expand Down Expand Up @@ -76,7 +68,19 @@
}
],
"components": {
"schemas": {
"schemas": {
"InitializeResult": {
"title": "InitializeResult",
"type": "object",
"required": ["version"],
"properties": {
"version": {
"$ref": "https://meta.comcast.com/firebolt/types#/definitions/SemanticVersion",
"description": "The semantic version of the FEE."
}
},
"additionalProperties": false
}
}
}
}
Loading

0 comments on commit 6b8c288

Please sign in to comment.