From 8347af20141ab6b0fa3b6d22dbc6d5c75323458c Mon Sep 17 00:00:00 2001 From: Stephen Hodgson Date: Mon, 20 Oct 2025 17:08:23 -0400 Subject: [PATCH 1/2] unity-cli@v1.4.2 - added LicensingClient.Activate optional parameter skipEntitlementCheck - added workflow timeline --- .github/workflows/integration-tests.yml | 11 ++++++++++- package-lock.json | 26 ++++++++++++------------- package.json | 4 ++-- src/cli.ts | 2 +- src/license-client.ts | 12 +++++++----- 5 files changed, 33 insertions(+), 22 deletions(-) diff --git a/.github/workflows/integration-tests.yml b/.github/workflows/integration-tests.yml index 2e3a74f..d559db8 100644 --- a/.github/workflows/integration-tests.yml +++ b/.github/workflows/integration-tests.yml @@ -23,7 +23,7 @@ jobs: id: setup-jobs with: build-options: ./.github/workflows/build-options.json - group-by: 'unity-version' + group-by: unity-version outputs: jobs: ${{ steps.setup-jobs.outputs.jobs }} validate: @@ -40,3 +40,12 @@ jobs: uses: ./.github/workflows/unity-build.yml with: matrix: ${{ toJSON(matrix.jobs.matrix) }} + timeline: + needs: [setup, validate] + if: always() + runs-on: ubuntu-latest + permissions: + contents: read + steps: + - uses: Kesin11/actions-timeline@c2f474758e8e9ac6f37ec64a6442dead7fd1dad2 # v2.2.5 + continue-on-error: true diff --git a/package-lock.json b/package-lock.json index ee4e1c6..989951e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@rage-against-the-pixel/unity-cli", - "version": "1.4.1", + "version": "1.4.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@rage-against-the-pixel/unity-cli", - "version": "1.4.1", + "version": "1.4.2", "license": "MIT", "dependencies": { "@electron/asar": "^4.0.1", @@ -24,7 +24,7 @@ }, "devDependencies": { "@types/jest": "^30.0.0", - "@types/node": "^24.8.0", + "@types/node": "^24.9.0", "@types/semver": "^7.7.1", "@types/update-notifier": "^6.0.8", "jest": "^30.2.0", @@ -1632,14 +1632,14 @@ } }, "node_modules/@types/node": { - "version": "24.8.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.8.0.tgz", - "integrity": "sha512-5x08bUtU8hfboMTrJ7mEO4CpepS9yBwAqcL52y86SWNmbPX8LVbNs3EP4cNrIZgdjk2NAlP2ahNihozpoZIxSg==", + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.9.0.tgz", + "integrity": "sha512-MKNwXh3seSK8WurXF7erHPJ2AONmMwkI7zAMrXZDPIru8jRqkk6rGDBVbw4mLwfqA+ZZliiDPg05JQ3uW66tKQ==", "dev": true, "license": "MIT", "peer": true, "dependencies": { - "undici-types": "~7.14.0" + "undici-types": "~7.16.0" } }, "node_modules/@types/semver": { @@ -2270,9 +2270,9 @@ "license": "MIT" }, "node_modules/baseline-browser-mapping": { - "version": "2.8.17", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.17.tgz", - "integrity": "sha512-j5zJcx6golJYTG6c05LUZ3Z8Gi+M62zRT/ycz4Xq4iCOdpcxwg7ngEYD4KA0eWZC7U17qh/Smq8bYbACJ0ipBA==", + "version": "2.8.18", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.18.tgz", + "integrity": "sha512-UYmTpOBwgPScZpS4A+YbapwWuBwasxvO/2IOHArSsAhL/+ZdmATBXTex3t+l2hXwLVYK382ibr/nKoY9GKe86w==", "dev": true, "license": "Apache-2.0", "bin": { @@ -5921,9 +5921,9 @@ } }, "node_modules/undici-types": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.14.0.tgz", - "integrity": "sha512-QQiYxHuyZ9gQUIrmPo3IA+hUl4KYk8uSA7cHrcKd/l3p1OTpZcM0Tbp9x7FAtXdAYhlasd60ncPpgu6ihG6TOA==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", + "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", "dev": true, "license": "MIT" }, diff --git a/package.json b/package.json index fa90f6f..6aee533 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@rage-against-the-pixel/unity-cli", - "version": "1.4.1", + "version": "1.4.2", "description": "A command line utility for the Unity Game Engine.", "author": "RageAgainstThePixel", "license": "MIT", @@ -60,7 +60,7 @@ }, "devDependencies": { "@types/jest": "^30.0.0", - "@types/node": "^24.8.0", + "@types/node": "^24.9.0", "@types/semver": "^7.7.1", "@types/update-notifier": "^6.0.8", "jest": "^30.2.0", diff --git a/src/cli.ts b/src/cli.ts index 95479e9..8260ad8 100644 --- a/src/cli.ts +++ b/src/cli.ts @@ -578,7 +578,7 @@ program.command('open-project') } }); -program.commandsGroup("Unity Package Manager:") +program.commandsGroup("Unity Package Manager:"); program.command('sign-package') .description('Sign a Unity package.') diff --git a/src/license-client.ts b/src/license-client.ts index 92411a5..9a9e464 100644 --- a/src/license-client.ts +++ b/src/license-client.ts @@ -325,12 +325,14 @@ export class LicensingClient { * @returns A promise that resolves when the license is activated. * @throws Error if activation fails or required parameters are missing. */ - public async Activate(options: ActivateOptions): Promise { - let activeLicenses = await this.GetActiveEntitlements(); + public async Activate(options: ActivateOptions, skipEntitlementCheck: boolean = false): Promise { + if (!skipEntitlementCheck) { + let activeLicenses = await this.GetActiveEntitlements(); - if (activeLicenses.includes(options.licenseType)) { - this.logger.info(`License of type '${options.licenseType}' is already active, skipping activation`); - return; + if (activeLicenses.includes(options.licenseType)) { + this.logger.info(`License of type '${options.licenseType}' is already active, skipping activation`); + return; + } } switch (options.licenseType) { From 3f270ea1bd7aec931197d4bb2a79adc0caa90784 Mon Sep 17 00:00:00 2001 From: Stephen Hodgson Date: Mon, 20 Oct 2025 17:10:12 -0400 Subject: [PATCH 2/2] added jsDocs --- src/license-client.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/license-client.ts b/src/license-client.ts index 9a9e464..8c34daa 100644 --- a/src/license-client.ts +++ b/src/license-client.ts @@ -322,6 +322,7 @@ export class LicensingClient { /** * Activates a Unity license. * @param options The activation options including license type, services config, serial, username, and password. + * @param skipEntitlementCheck Whether to skip the entitlement check. * @returns A promise that resolves when the license is activated. * @throws Error if activation fails or required parameters are missing. */