diff --git a/.github/workflows/builds.yml b/.github/workflows/builds.yml index 46213b30c..8b2ffa0bd 100644 --- a/.github/workflows/builds.yml +++ b/.github/workflows/builds.yml @@ -100,13 +100,15 @@ jobs: - name: Install VA-API/NVIDIA drivers for linux x64 build if: ${{ matrix.os == 'ubuntu-latest'}} - run: | + run: | sudo apt install -y libva-dev libdrm-dev libnvidia-compute-570 libnvidia-decode-570 nvidia-cuda-dev -y - name: Install Rust toolchain. run: | rustup target add ${{ matrix.target }} + - uses: Swatinem/rust-cache@v2.8.2 + - name: Build (Cargo) if: ${{ !contains(matrix.target, 'android') }} run: | diff --git a/.github/workflows/ffi-builds.yml b/.github/workflows/ffi-builds.yml index a70477809..78547c303 100644 --- a/.github/workflows/ffi-builds.yml +++ b/.github/workflows/ffi-builds.yml @@ -117,6 +117,8 @@ jobs: run: | rustup target add ${{ matrix.target }} + - uses: Swatinem/rust-cache@v2.8.2 + - name: Install Protoc uses: arduino/setup-protoc@v2 with: @@ -209,11 +211,6 @@ jobs: name: ffi-builds-${{ matrix.target }} path: ${{ matrix.name }}.zip - build_node: - name: Build node bindings - runs-on: ubuntu-latest - steps: - release: name: Release to GH (Draft) runs-on: ubuntu-latest diff --git a/.github/workflows/gen-node-proto.yml b/.github/workflows/gen-node-proto.yml new file mode 100644 index 000000000..c3e21f9db --- /dev/null +++ b/.github/workflows/gen-node-proto.yml @@ -0,0 +1,68 @@ +name: Generate FFI Proto (Node) + +on: + pull_request: + branches: + - main + paths: + - livekit-ffi/** + - livekit-ffi-node-bindings/** + workflow_dispatch: + workflow_call: + +permissions: + contents: write + +concurrency: + group: ${{ github.workflow }}-${{ github.sha }} + cancel-in-progress: false + +env: + PACKAGE_DIR: ./livekit-ffi-node-bindings + +jobs: + generate_protobuf: + runs-on: ubuntu-latest + name: Generating protobuf + if: github.event_name == 'pull_request' + + defaults: + run: + working-directory: ${{ env.PACKAGE_DIR }} + steps: + - uses: actions/checkout@v4 + with: + submodules: true + ref: ${{ github.event.pull_request.head.ref }} + + - name: Install Protoc + uses: arduino/setup-protoc@v3 + with: + version: "25.1" + repo-token: ${{ secrets.GITHUB_TOKEN }} + + - uses: actions/checkout@v6 + with: + submodules: recursive + - uses: pnpm/action-setup@v4 + with: + package_json_file: livekit-ffi-node-bindings/package.json + + - name: Setup node + uses: actions/setup-node@v6 + with: + node-version: 24 + cache: pnpm + cache-dependency-path: livekit-ffi-node-bindings/pnpm-lock.yaml + + - run: pnpm install + + - name: generate JS stubs + run: ./generate_proto.sh + + - name: Add changes + uses: EndBug/add-and-commit@v9 + with: + add: '["livekit-ffi-node-bindings/src/proto"]' + default_author: github_actions + message: generated protobuf diff --git a/.github/workflows/node-builds.yml b/.github/workflows/node-builds.yml index 4f4f35c59..3033b5877 100644 --- a/.github/workflows/node-builds.yml +++ b/.github/workflows/node-builds.yml @@ -1,9 +1,8 @@ -name: node ffi binding build +name: Node FFI binding build and release permissions: id-token: write # Required for OIDC contents: write # Required to create GH releases - pull-requests: write # Required to interact with PRs on: workflow_dispatch: @@ -56,41 +55,33 @@ jobs: - uses: actions/checkout@v6 with: submodules: recursive - - uses: pnpm/action-setup@v4 + with: + package_json_file: livekit-ffi-node-bindings/package.json - name: Setup node uses: actions/setup-node@v6 with: node-version: 24 cache: pnpm + cache-dependency-path: livekit-ffi-node-bindings/pnpm-lock.yaml + + - run: pnpm install + working-directory: livekit-ffi-node-bindings - uses: dtolnay/rust-toolchain@stable with: toolchain: stable targets: ${{ matrix.target }} + - uses: Swatinem/rust-cache@v2.8.2 + - name: Install Protoc uses: arduino/setup-protoc@v3 with: version: "25.1" repo-token: ${{ secrets.GITHUB_TOKEN }} - - name: Cache cargo - uses: actions/cache@v4 - with: - path: | - ~/.cargo/registry/index/ - ~/.cargo/registry/cache/ - ~/.cargo/git/db/ - packages/livekit-ffi/.cargo-cache - packages/livekit-ffi/target/ - key: ${{ matrix.target }}-cargo-${{ matrix.os }} - - - name: Install dependencies - working-directory: livekit-ffi-node-bindings - run: pnpm install - - name: Build (Linux) if: ${{ matrix.platform == 'linux' }} run: | @@ -166,36 +157,36 @@ jobs: release: needs: build - if: github.ref == 'refs/heads/main' name: Release runs-on: ubuntu-latest steps: - uses: actions/checkout@v5 - uses: pnpm/action-setup@v4 + with: + package_json_file: livekit-ffi-node-bindings/package.json - name: Setup node uses: actions/setup-node@v6 with: node-version: 24 cache: pnpm + cache-dependency-path: livekit-ffi-node-bindings/pnpm-lock.yaml - - name: Install dependencies + - working-directory: livekit-ffi-node-bindings run: pnpm install + - name: Install Protoc + uses: arduino/setup-protoc@v3 + with: + version: "25.1" + repo-token: ${{ secrets.GITHUB_TOKEN }} + - name: Download all artifacts uses: actions/download-artifact@v4 with: path: livekit-ffi-node-bindings/artifacts - - name: Move artifacts - run: pnpm artifacts - working-directory: livekit-ffi-node-bindings - - - name: List packages - run: ls -R ./livekit-ffi-node-bindings/npm - shell: bash - - name: Set package version from tag working-directory: livekit-ffi-node-bindings run: | @@ -205,10 +196,26 @@ jobs: npm version $VERSION --no-git-tag-version pnpm run version + - name: Commit and push versioning changes + run: | + git config --global user.name "github-actions[bot]" + git config --global user.email "github-actions[bot]@users.noreply.github.com" + git add . + git commit -m "chore: update livekit-ffi-node-bindings version to $(echo "${{ env.TAG_NAME }}" | sed 's/.*@//')" || echo "No changes to commit" + git push origin HEAD + - name: Build TS parts working-directory: livekit-ffi-node-bindings run: pnpm build:ts + - name: Move artifacts + run: pnpm artifacts + working-directory: livekit-ffi-node-bindings + + - name: List packages + run: ls -R ./livekit-ffi-node-bindings/npm + shell: bash + - name: Publish working-directory: livekit-ffi-node-bindings run: pnpm publish --tag dev diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 0c7893a99..cf811cfe6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,6 +1,7 @@ name: Release permissions: + id-token: write # Required for OIDC pull-requests: write contents: write actions: write diff --git a/licenserc.toml b/licenserc.toml index 7c0af1c47..1fb8b3d25 100644 --- a/licenserc.toml +++ b/licenserc.toml @@ -18,10 +18,14 @@ excludes = [ # Generated files "livekit-protocol/src/livekit.rs", "livekit-protocol/src/livekit.serde.rs", + "livekit-ffi-node-bindings/src/napi/native.cjs", + "livekit-ffi-node-bindings/src/napi/native.d.ts", + "livekit-ffi-node-bindings/src/napi/native.js", + ] [mapping.DOUBLESLASH_STYLE] -extensions = ["proto"] +extensions = ["proto", "ts", "js", "cjs"] [mapping.SLASHSTAR_STYLE] extensions = ["mm"] diff --git a/livekit-ffi-node-bindings/package.json b/livekit-ffi-node-bindings/package.json index f929619b0..094afef72 100644 --- a/livekit-ffi-node-bindings/package.json +++ b/livekit-ffi-node-bindings/package.json @@ -65,7 +65,7 @@ }, "scripts": { "build:ts": "tsup --onSuccess \"tsc --declaration --emitDeclarationOnly\" && cp -r src/napi dist/ && cp -r src/napi/* dist/", - "build": "./generate_proto.sh && pnpm build:ts && napi build --platform --release --dts native.d.ts --js native.cjs --pipe \"prettier -w\" src/napi", + "build": "pnpm build:ts && napi build --platform --release --dts native.d.ts --js native.cjs --pipe \"prettier -w\" src/napi", "artifacts": "pnpm build:ts && napi artifacts", "build:debug": "napi build --platform", "universal": "napi universal", diff --git a/livekit-ffi-node-bindings/src/index.ts b/livekit-ffi-node-bindings/src/index.ts index 97b304284..2c583ebd6 100644 --- a/livekit-ffi-node-bindings/src/index.ts +++ b/livekit-ffi-node-bindings/src/index.ts @@ -1,18 +1,16 @@ -/* - * Copyright 2025 LiveKit, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// Copyright 2025 LiveKit, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. // SPDX-FileCopyrightText: 2024 LiveKit, Inc. // diff --git a/livekit-ffi-node-bindings/src/napi/native.cjs b/livekit-ffi-node-bindings/src/napi/native.cjs index b8001002a..886b0145d 100644 --- a/livekit-ffi-node-bindings/src/napi/native.cjs +++ b/livekit-ffi-node-bindings/src/napi/native.cjs @@ -1,19 +1,3 @@ -/* - * Copyright 2025 LiveKit, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - /* tslint:disable */ /* eslint-disable */ /* prettier-ignore */ @@ -52,7 +36,7 @@ switch (platform) { switch (arch) { case "arm64": localFileExisted = existsSync( - join(__dirname, "rtc-node.android-arm64.node"), + join(__dirname, "rtc-node.android-arm64.node") ); try { if (localFileExisted) { @@ -66,7 +50,7 @@ switch (platform) { break; case "arm": localFileExisted = existsSync( - join(__dirname, "rtc-node.android-arm-eabi.node"), + join(__dirname, "rtc-node.android-arm-eabi.node") ); try { if (localFileExisted) { @@ -86,7 +70,7 @@ switch (platform) { switch (arch) { case "x64": localFileExisted = existsSync( - join(__dirname, "rtc-node.win32-x64-msvc.node"), + join(__dirname, "rtc-node.win32-x64-msvc.node") ); try { if (localFileExisted) { @@ -100,7 +84,7 @@ switch (platform) { break; case "ia32": localFileExisted = existsSync( - join(__dirname, "rtc-node.win32-ia32-msvc.node"), + join(__dirname, "rtc-node.win32-ia32-msvc.node") ); try { if (localFileExisted) { @@ -114,7 +98,7 @@ switch (platform) { break; case "arm64": localFileExisted = existsSync( - join(__dirname, "rtc-node.win32-arm64-msvc.node"), + join(__dirname, "rtc-node.win32-arm64-msvc.node") ); try { if (localFileExisted) { @@ -132,7 +116,7 @@ switch (platform) { break; case "darwin": localFileExisted = existsSync( - join(__dirname, "rtc-node.darwin-universal.node"), + join(__dirname, "rtc-node.darwin-universal.node") ); try { if (localFileExisted) { @@ -145,7 +129,7 @@ switch (platform) { switch (arch) { case "x64": localFileExisted = existsSync( - join(__dirname, "rtc-node.darwin-x64.node"), + join(__dirname, "rtc-node.darwin-x64.node") ); try { if (localFileExisted) { @@ -159,7 +143,7 @@ switch (platform) { break; case "arm64": localFileExisted = existsSync( - join(__dirname, "rtc-node.darwin-arm64.node"), + join(__dirname, "rtc-node.darwin-arm64.node") ); try { if (localFileExisted) { @@ -195,7 +179,7 @@ switch (platform) { case "x64": if (isMusl()) { localFileExisted = existsSync( - join(__dirname, "rtc-node.linux-x64-musl.node"), + join(__dirname, "rtc-node.linux-x64-musl.node") ); try { if (localFileExisted) { @@ -208,7 +192,7 @@ switch (platform) { } } else { localFileExisted = existsSync( - join(__dirname, "rtc-node.linux-x64-gnu.node"), + join(__dirname, "rtc-node.linux-x64-gnu.node") ); try { if (localFileExisted) { @@ -224,7 +208,7 @@ switch (platform) { case "arm64": if (isMusl()) { localFileExisted = existsSync( - join(__dirname, "rtc-node.linux-arm64-musl.node"), + join(__dirname, "rtc-node.linux-arm64-musl.node") ); try { if (localFileExisted) { @@ -237,7 +221,7 @@ switch (platform) { } } else { localFileExisted = existsSync( - join(__dirname, "rtc-node.linux-arm64-gnu.node"), + join(__dirname, "rtc-node.linux-arm64-gnu.node") ); try { if (localFileExisted) { @@ -253,7 +237,7 @@ switch (platform) { case "arm": if (isMusl()) { localFileExisted = existsSync( - join(__dirname, "rtc-node.linux-arm-musleabihf.node"), + join(__dirname, "rtc-node.linux-arm-musleabihf.node") ); try { if (localFileExisted) { @@ -266,7 +250,7 @@ switch (platform) { } } else { localFileExisted = existsSync( - join(__dirname, "rtc-node.linux-arm-gnueabihf.node"), + join(__dirname, "rtc-node.linux-arm-gnueabihf.node") ); try { if (localFileExisted) { @@ -282,7 +266,7 @@ switch (platform) { case "riscv64": if (isMusl()) { localFileExisted = existsSync( - join(__dirname, "rtc-node.linux-riscv64-musl.node"), + join(__dirname, "rtc-node.linux-riscv64-musl.node") ); try { if (localFileExisted) { @@ -295,7 +279,7 @@ switch (platform) { } } else { localFileExisted = existsSync( - join(__dirname, "rtc-node.linux-riscv64-gnu.node"), + join(__dirname, "rtc-node.linux-riscv64-gnu.node") ); try { if (localFileExisted) { @@ -310,7 +294,7 @@ switch (platform) { break; case "s390x": localFileExisted = existsSync( - join(__dirname, "rtc-node.linux-s390x-gnu.node"), + join(__dirname, "rtc-node.linux-s390x-gnu.node") ); try { if (localFileExisted) { diff --git a/livekit-ffi-node-bindings/src/napi/native.d.ts b/livekit-ffi-node-bindings/src/napi/native.d.ts index 063b2d425..5b130faa7 100644 --- a/livekit-ffi-node-bindings/src/napi/native.d.ts +++ b/livekit-ffi-node-bindings/src/napi/native.d.ts @@ -1,19 +1,3 @@ -/* - * Copyright 2025 LiveKit, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - /* tslint:disable */ /* eslint-disable */ @@ -22,7 +6,7 @@ export declare function livekitInitialize( callback: (data: Uint8Array) => void, captureLogs: boolean, - sdkVersion: string, + sdkVersion: string ): void; export declare function livekitFfiRequest(data: Uint8Array): Uint8Array; export declare function livekitRetrievePtr(handle: Uint8Array): bigint; diff --git a/livekit-ffi-node-bindings/src/napi/native.js b/livekit-ffi-node-bindings/src/napi/native.js index bc0561438..2b53da1ef 100644 --- a/livekit-ffi-node-bindings/src/napi/native.js +++ b/livekit-ffi-node-bindings/src/napi/native.js @@ -1,25 +1,6 @@ -/* - * Copyright 2025 LiveKit, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -// SPDX-FileCopyrightText: 2024 LiveKit, Inc. -// -// SPDX-License-Identifier: Apache-2.0 // this file exists to smoothly translate the autogenerated CommonJS code // to an ES module that plays better with TypeScript. -import native from './native.cjs'; +import native from "./native.cjs"; export const { livekitDispose, diff --git a/livekit-ffi-node-bindings/src/proto/audio_frame_pb.ts b/livekit-ffi-node-bindings/src/proto/audio_frame_pb.ts index a0d3050aa..94b0da88d 100644 --- a/livekit-ffi-node-bindings/src/proto/audio_frame_pb.ts +++ b/livekit-ffi-node-bindings/src/proto/audio_frame_pb.ts @@ -1,19 +1,3 @@ -/* - * Copyright 2025 LiveKit, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - // Copyright 2025 LiveKit, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/livekit-ffi-node-bindings/src/proto/data_stream_pb.ts b/livekit-ffi-node-bindings/src/proto/data_stream_pb.ts index 7ef729b58..11d114e9f 100644 --- a/livekit-ffi-node-bindings/src/proto/data_stream_pb.ts +++ b/livekit-ffi-node-bindings/src/proto/data_stream_pb.ts @@ -1,19 +1,3 @@ -/* - * Copyright 2025 LiveKit, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - // Copyright 2025 LiveKit, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/livekit-ffi-node-bindings/src/proto/e2ee_pb.ts b/livekit-ffi-node-bindings/src/proto/e2ee_pb.ts index 8bf3fe64e..9994f3d6d 100644 --- a/livekit-ffi-node-bindings/src/proto/e2ee_pb.ts +++ b/livekit-ffi-node-bindings/src/proto/e2ee_pb.ts @@ -1,19 +1,3 @@ -/* - * Copyright 2025 LiveKit, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - // Copyright 2025 LiveKit, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/livekit-ffi-node-bindings/src/proto/ffi_pb.ts b/livekit-ffi-node-bindings/src/proto/ffi_pb.ts index 4c585af50..844e39175 100644 --- a/livekit-ffi-node-bindings/src/proto/ffi_pb.ts +++ b/livekit-ffi-node-bindings/src/proto/ffi_pb.ts @@ -1,19 +1,3 @@ -/* - * Copyright 2025 LiveKit, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - // Copyright 2025 LiveKit, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/livekit-ffi-node-bindings/src/proto/handle_pb.ts b/livekit-ffi-node-bindings/src/proto/handle_pb.ts index d6fe2c92c..597ad3838 100644 --- a/livekit-ffi-node-bindings/src/proto/handle_pb.ts +++ b/livekit-ffi-node-bindings/src/proto/handle_pb.ts @@ -1,19 +1,3 @@ -/* - * Copyright 2025 LiveKit, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - // Copyright 2025 LiveKit, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/livekit-ffi-node-bindings/src/proto/index.ts b/livekit-ffi-node-bindings/src/proto/index.ts index 5ded27a0a..72a283812 100644 --- a/livekit-ffi-node-bindings/src/proto/index.ts +++ b/livekit-ffi-node-bindings/src/proto/index.ts @@ -1,3 +1,17 @@ +// Copyright 2025 LiveKit, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + /* * Copyright 2025 LiveKit, Inc. * diff --git a/livekit-ffi-node-bindings/src/proto/participant_pb.ts b/livekit-ffi-node-bindings/src/proto/participant_pb.ts index 8ab5fb54b..de89ecc19 100644 --- a/livekit-ffi-node-bindings/src/proto/participant_pb.ts +++ b/livekit-ffi-node-bindings/src/proto/participant_pb.ts @@ -1,19 +1,3 @@ -/* - * Copyright 2025 LiveKit, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - // Copyright 2025 LiveKit, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/livekit-ffi-node-bindings/src/proto/room_pb.ts b/livekit-ffi-node-bindings/src/proto/room_pb.ts index 29406e3fb..2aadcdd77 100644 --- a/livekit-ffi-node-bindings/src/proto/room_pb.ts +++ b/livekit-ffi-node-bindings/src/proto/room_pb.ts @@ -1,19 +1,3 @@ -/* - * Copyright 2025 LiveKit, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - // Copyright 2025 LiveKit, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/livekit-ffi-node-bindings/src/proto/rpc_pb.ts b/livekit-ffi-node-bindings/src/proto/rpc_pb.ts index 5f8d24163..922778418 100644 --- a/livekit-ffi-node-bindings/src/proto/rpc_pb.ts +++ b/livekit-ffi-node-bindings/src/proto/rpc_pb.ts @@ -1,19 +1,3 @@ -/* - * Copyright 2025 LiveKit, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - // Copyright 2025 LiveKit, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/livekit-ffi-node-bindings/src/proto/stats_pb.ts b/livekit-ffi-node-bindings/src/proto/stats_pb.ts index ed6a9976e..3315e83b8 100644 --- a/livekit-ffi-node-bindings/src/proto/stats_pb.ts +++ b/livekit-ffi-node-bindings/src/proto/stats_pb.ts @@ -1,19 +1,3 @@ -/* - * Copyright 2025 LiveKit, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - // Copyright 2025 LiveKit, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/livekit-ffi-node-bindings/src/proto/track_pb.ts b/livekit-ffi-node-bindings/src/proto/track_pb.ts index ba480d1ae..a2f2267cb 100644 --- a/livekit-ffi-node-bindings/src/proto/track_pb.ts +++ b/livekit-ffi-node-bindings/src/proto/track_pb.ts @@ -1,19 +1,3 @@ -/* - * Copyright 2025 LiveKit, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - // Copyright 2025 LiveKit, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/livekit-ffi-node-bindings/src/proto/track_publication_pb.ts b/livekit-ffi-node-bindings/src/proto/track_publication_pb.ts index 87d5177a7..327ebbc91 100644 --- a/livekit-ffi-node-bindings/src/proto/track_publication_pb.ts +++ b/livekit-ffi-node-bindings/src/proto/track_publication_pb.ts @@ -1,19 +1,3 @@ -/* - * Copyright 2025 LiveKit, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - // Copyright 2025 LiveKit, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/livekit-ffi-node-bindings/src/proto/video_frame_pb.ts b/livekit-ffi-node-bindings/src/proto/video_frame_pb.ts index ceaf1a423..87f433b39 100644 --- a/livekit-ffi-node-bindings/src/proto/video_frame_pb.ts +++ b/livekit-ffi-node-bindings/src/proto/video_frame_pb.ts @@ -1,19 +1,3 @@ -/* - * Copyright 2025 LiveKit, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - // Copyright 2025 LiveKit, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/livekit-ffi-node-bindings/tsup.config.ts b/livekit-ffi-node-bindings/tsup.config.ts index 178932a52..f493e641e 100644 --- a/livekit-ffi-node-bindings/tsup.config.ts +++ b/livekit-ffi-node-bindings/tsup.config.ts @@ -1,18 +1,16 @@ -/* - * Copyright 2025 LiveKit, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// Copyright 2025 LiveKit, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. import type { Options } from "tsup";