Skip to content

Commit

Permalink
Merge branch 'release51'
Browse files Browse the repository at this point in the history
  • Loading branch information
jstarpl committed Oct 7, 2024
2 parents 6cd6825 + 3ef299f commit 8a3e60c
Show file tree
Hide file tree
Showing 1,061 changed files with 64,174 additions and 45,152 deletions.
6 changes: 3 additions & 3 deletions .github/ISSUE_TEMPLATE/rfc.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: Request for Comments ❗
description: Use this to initiate a discussion about a new feature or a larger change
description: Use this to initiate a discussion about a new feature or a larger change.
title: "RFC: [Short description of the feature/change]"
labels:
- RFC
Expand All @@ -14,15 +14,15 @@ body:
- type: textarea
attributes:
label: About me
label: About Me
description: Tell us who / which organization you are representing, and how the Sofie team will be able to contact you.
placeholder: Example "This RFC is posted on behalf of the NRK."
validations:
required: true

- type: textarea
attributes:
label: Use case
label: Use Case
description: "Please write some background information here, such as: What is your use case? What problem are you trying to solve?"
validations:
required: true
Expand Down
2 changes: 1 addition & 1 deletion .github/actions/setup-meteor/action.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ description: "Setup Meteor"
runs:
using: "composite"
steps:
- run: curl "https://install.meteor.com/?release=2.7.3" | sh
- run: curl "https://install.meteor.com/?release=2.13.3" | sh
shell: bash
- run: meteor npm install -g yarn
shell: bash
79 changes: 77 additions & 2 deletions .github/workflows/node.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,10 @@ jobs:
- name: Run typecheck and linter
run: |
cd meteor
# setup zodern:types. No linters are setup, so this simply installs the packages
meteor lint
meteor yarn ci:lint
env:
CI: true
Expand Down Expand Up @@ -77,6 +81,10 @@ jobs:
- name: Run Tests
run: |
cd meteor
# setup zodern:types. No linters are setup, so this simply installs the packages
meteor lint
NODE_OPTIONS="--max-old-space-size=6144" meteor yarn unitci --force-exit
env:
CI: true
Expand Down Expand Up @@ -463,7 +471,7 @@ jobs:
- blueprints-integration
- server-core-integration
- shared-lib
node-version: [14.x, 16.x, 18.x]
node-version: [14.x, 16.x, 18.x, 20.x]
include:
# include additional configs, to run certain packages only for a certain version of node
- node-version: 14.x
Expand All @@ -477,6 +485,8 @@ jobs:
package-name: openapi
- node-version: 18.x
package-name: openapi
- node-version: 20.x
package-name: openapi
# No tests for the gateways yet
# - node-version: 18.x
# package-name: playout-gateway
Expand Down Expand Up @@ -519,6 +529,64 @@ jobs:
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

asyncapi-generation:
name: AsyncAPI Generation
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- uses: actions/checkout@v4
with:
persist-credentials: false
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version-file: ".node-version"
- name: Prepare Environment
run: |
cd packages
yarn
env:
CI: true
- name: Run generator
run: |
cd packages/live-status-gateway
yarn gendocs
yarn genserver
env:
CI: true
openapi-generation:
name: OpenAPI Generation
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- uses: actions/checkout@v4
with:
persist-credentials: false
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version-file: ".node-version"
- name: Prepare Environment
run: |
cd packages
yarn
env:
CI: true
- name: Build OpenAPI client library
run: |
cd packages/openapi
yarn build
env:
CI: true
- name: Generate OpenAPI docs and server
run: |
cd packages/openapi
yarn gendocs
yarn genserver
env:
CI: true

publish-docs:
name: Publish Docs
runs-on: ubuntu-latest
Expand Down Expand Up @@ -604,7 +672,7 @@ jobs:
else
# make dependencies of `determine-npm-tag` available
yarn install --mode=skip-build
cd packages
PACKAGE_NAME="@sofie-automation/shared-lib"
PUBLISHED_VERSION=$(yarn npm info --json $PACKAGE_NAME | jq -c '.version' -r)
Expand All @@ -622,6 +690,13 @@ jobs:
yarn build
env:
CI: true
- name: Build OpenAPI client library
if: ${{ steps.do-publish.outputs.tag }}
run: |
cd packages/openapi
yarn build
env:
CI: true
- name: Modify dependencies to use npm packages
run: node scripts/prepublish.js
- name: Publish to NPM
Expand Down
10 changes: 9 additions & 1 deletion .github/workflows/prerelease-libs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ jobs:
- blueprints-integration
- server-core-integration
- shared-lib
node-version: [14.x, 16.x, 18.x]
node-version: [14.x, 16.x, 18.x, 20.x]

steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -131,6 +131,14 @@ jobs:
yarn build
env:
CI: true

- name: Build OpenAPI client library
if: ${{ steps.do-publish.outputs.publish }}
run: |
cd packages/openapi
yarn build
env:
CI: true
- name: Modify dependencies to use npm packages
run: node scripts/prepublish.js
- name: Publish to NPM
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/sonar.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ jobs:
sonarcloud:
name: SonarCloud
runs-on: ubuntu-latest
if: ${{ github.repository_owner == 'nrkno' }}
if: ${{ github.repository_owner == 'nrkno' && !github.event.pull_request.head.repo.fork }}
timeout-minutes: 15

steps:
- uses: actions/checkout@v4
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/trivy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ jobs:
strategy:
matrix:
image: ["server-core", "playout-gateway", "mos-gateway"]
timeout-minutes: 15

steps:
- name: Run Trivy vulnerability scanner (json)
uses: aquasecurity/[email protected]
Expand Down
26 changes: 25 additions & 1 deletion DEVELOPER.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ Follow these instructions to start up Sofie Core in development mode. (For produ
### Prerequisites

- Install [Node.js](https://nodejs.org) 14 (using [nvm](https://github.com/nvm-sh/nvm) or [nvm-windows](https://github.com/coreybutler/nvm-windows) is the recommended way to install Node.js)
- Install [Meteor](https://www.meteor.com/install) (`npm install --global meteor`)
- Install [Meteor](https://www.meteor.com/install) (`npm install --global meteor@2`)
- Install [Node.js](https://nodejs.org) 18 (using the same method you used above, you can uninstall node 14 if needed)
- Install an older version of corepack (`npm install --global [email protected]`)
- Enable [corepack](https://nodejs.org/api/corepack.html#corepack) (`corepack enable`) as administrator/root. If `corepack` is not found, you may need to install it first with `npm install --global corepack`
Expand Down Expand Up @@ -132,6 +132,30 @@ The resulting JSON file will be placed in `meteor/public/locales/xx`, where it w

Then submit this as a PR.

## Deprecations

### ConfigManifests

The ConfigManifests for Blueprints and Gateways was replaced with JSONSchema in R50.
However, one usage by AdlibActions for their userDataManifest remains as this is not something we are actively using.

## Blueprint Migrations

In R49, a replacement flow was added consisting of `validateConfig` and `applyConfig`.
It is no longer recommended to use the old migrations flow for showstyle and studio blueprints.

### ExpectedMediaItems

These are used for Media-manager which is no longer being developed.

### Blueprints: getPieceABSessionId & getTimelineObjectAbSessionId

With AB being a native concept supported by Sofie since R50, these are likely no longer useful to Blueprints.

### MongoQuery `fields` specifier

It is recommended to use `projection` instead, as it is functionally identical but follows recommended naming from mongodb.

## Other info

### Version-Numbering Scheme
Expand Down
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,14 @@ This is the _Core_ application of the [**Sofie** TV Automation System](https://g

The _Core_ is a _Meteor/Node.JS_-based web server that serves the web GUIs as well as handling the business logic for the Sofie system.

* [_Core_-specific Developer Info](DEVELOPER.md)

- [_Core_-specific Developer Info](DEVELOPER.md)

## General Sofie System Information
* [_Sofie_ Documentation](https://nrkno.github.io/sofie-core/)
* [_Sofie_ Releases](https://nrkno.github.io/sofie-core/releases)
* [Contribution Guidelines](CONTRIBUTING.md)
* [License](LICENSE)

- [_Sofie_ Documentation](https://nrkno.github.io/sofie-core/)
- [_Sofie_ Releases](https://nrkno.github.io/sofie-core/releases)
- [Contribution Guidelines](CONTRIBUTING.md)
- [License](LICENSE)

---

Expand Down
23 changes: 12 additions & 11 deletions meteor/.meteor/packages
Original file line number Diff line number Diff line change
Expand Up @@ -10,26 +10,27 @@

[email protected] # Packages every Meteor app needs to have
[email protected] # Packages for a great mobile UX
mongo@1.15.0 # The database Meteor supports right now
[email protected].11 # Reactive variable for tracker
mongo@1.16.7 # The database Meteor supports right now
[email protected].12 # Reactive variable for tracker

standard-minifier-css@1.8.1 # CSS minifier run for production mode
[email protected].0 # JS minifier run for production mode
standard-minifier-css@1.9.2 # CSS minifier run for production mode
[email protected].1 # JS minifier run for production mode
[email protected] # ECMAScript 5 compatibility for older browsers
[email protected].2 # Enable ECMAScript2015+ syntax in app code
typescript@4.5.4 # Enable TypeScript syntax in .ts and .tsx modules
[email protected].7 # Enable ECMAScript2015+ syntax in app code
typescript@4.9.4 # Enable TypeScript syntax in .ts and .tsx modules
[email protected] # Server-side component of the `meteor shell` command
[email protected].7 # Select when to allow use of the "modern" bundle
[email protected].9 # Select when to allow use of the "modern" bundle

[email protected] # Define static page content in .html files
react-meteor-data # React higher-order component for reactively tracking Meteor data

tracker@1.2.0 # Meteor's client-side reactive programming library
[email protected].0
tracker@1.3.2 # Meteor's client-side reactive programming library
[email protected].1
fourseven:scss

[email protected].2
[email protected].3
ostrio:meteor-root
[email protected].1
[email protected].4

julusian:[email protected]
zodern:types
2 changes: 1 addition & 1 deletion meteor/.meteor/release
Original file line number Diff line number Diff line change
@@ -1 +1 @@
METEOR@2.7.3
METEOR@2.13.3
Loading

0 comments on commit 8a3e60c

Please sign in to comment.