homebridge-eggtimer-plugin 1.1.4 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,11 +1,12 @@
1
- # This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node
2
- # For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
3
-
4
1
  name: Build
5
2
  permissions:
6
3
  contents: read
7
4
 
8
- on: [pull_request]
5
+ on:
6
+ pull_request:
7
+ branches: [main]
8
+ push:
9
+ branches: [main]
9
10
 
10
11
  jobs:
11
12
 
@@ -15,16 +16,17 @@ jobs:
15
16
 
16
17
  strategy:
17
18
  matrix:
18
- node-version: [18.x, 20.x, 22.x, latest]
19
+ node-version: [20.x, 22.x]
19
20
 
20
21
  steps:
21
- - uses: actions/checkout@v4
22
- - uses: pnpm/action-setup@v4
22
+ - uses: actions/checkout@v6
23
+ - uses: pnpm/action-setup@v5
23
24
  - name: Use Node.js ${{ matrix.node-version }}
24
- uses: actions/setup-node@v4.4.0
25
+ uses: actions/setup-node@v6.3.0
25
26
  with:
26
27
  node-version: ${{ matrix.node-version }}
27
28
  cache: pnpm
28
29
  - run: pnpm install --frozen-lockfile
30
+ - run: pnpm audit --audit-level=moderate
29
31
  - run: pnpm lint
30
32
  - run: pnpm build
@@ -0,0 +1,30 @@
1
+ name: CodeQL
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ pull_request:
7
+ branches: [main]
8
+ schedule:
9
+ - cron: "0 6 * * 1"
10
+
11
+ permissions:
12
+ contents: read
13
+ security-events: write
14
+
15
+ jobs:
16
+ analyze:
17
+ name: Analyze
18
+ runs-on: ubuntu-latest
19
+ steps:
20
+ - uses: actions/checkout@v6
21
+
22
+ - name: Initialize CodeQL
23
+ uses: github/codeql-action/init@v4
24
+ with:
25
+ languages: javascript-typescript
26
+
27
+ - name: Perform CodeQL Analysis
28
+ uses: github/codeql-action/analyze@v4
29
+ with:
30
+ category: "/language:javascript-typescript"
@@ -0,0 +1,43 @@
1
+ name: Release
2
+
3
+ on:
4
+ workflow_run:
5
+ workflows: [Build]
6
+ types: [completed]
7
+ branches: [main]
8
+ workflow_dispatch:
9
+
10
+ concurrency:
11
+ group: release
12
+ cancel-in-progress: false
13
+
14
+ jobs:
15
+ release:
16
+ name: Semantic Release
17
+ runs-on: ubuntu-latest
18
+ if: >-
19
+ github.event_name == 'workflow_dispatch' ||
20
+ github.event.workflow_run.conclusion == 'success'
21
+ permissions:
22
+ contents: write
23
+ id-token: write
24
+ steps:
25
+ - uses: actions/checkout@v6
26
+ with:
27
+ fetch-depth: 0
28
+
29
+ - uses: pnpm/action-setup@v5
30
+
31
+ - uses: actions/setup-node@v6
32
+ with:
33
+ node-version: 24.x
34
+ cache: pnpm
35
+ registry-url: https://registry.npmjs.org/
36
+
37
+ - run: pnpm install --frozen-lockfile
38
+ - run: pnpm build
39
+
40
+ - name: Semantic Release
41
+ run: pnpm semantic-release
42
+ env:
43
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -0,0 +1,23 @@
1
+ {
2
+ "branches": ["main"],
3
+ "plugins": [
4
+ ["@semantic-release/commit-analyzer", {
5
+ "releaseRules": [
6
+ { "type": "build", "scope": "deps", "release": "patch" },
7
+ { "type": "build", "scope": "deps-dev", "release": "patch" }
8
+ ]
9
+ }],
10
+ ["@semantic-release/release-notes-generator", {
11
+ "presetConfig": {
12
+ "types": [
13
+ { "type": "feat", "section": "Features" },
14
+ { "type": "fix", "section": "Bug Fixes" },
15
+ { "type": "build", "section": "Dependencies", "hidden": false },
16
+ { "type": "perf", "section": "Performance" }
17
+ ]
18
+ }
19
+ }],
20
+ ["@semantic-release/npm", { "provenance": true }],
21
+ "@semantic-release/github"
22
+ ]
23
+ }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "homebridge-eggtimer-plugin",
3
3
  "displayName": "Homebridge Eggtimer Plugin",
4
- "version": "1.1.4",
4
+ "version": "1.2.1",
5
5
  "description": "Egg Timers for Homebridge: https://github.com/nfarina/homebridge",
6
6
  "license": "MIT",
7
7
  "keywords": [
@@ -31,27 +31,34 @@
31
31
  "node": ">=18.0.0",
32
32
  "homebridge": ">=1.3.5 || ^2.0.0-beta.0"
33
33
  },
34
+ "scripts": {
35
+ "lint": "eslint src",
36
+ "lintAndFix": "eslint --fix src",
37
+ "debug": "tsc && homebridge -I -D",
38
+ "build": "rimraf ./dist && tsc",
39
+ "prepublishOnly": "pnpm lint && pnpm build"
40
+ },
34
41
  "devDependencies": {
35
- "@eslint/js": "^9.34.0",
36
- "@stylistic/eslint-plugin": "^4.4.1",
42
+ "@eslint/js": "^10.0.0",
43
+ "@semantic-release/commit-analyzer": "13.0.1",
44
+ "@semantic-release/github": "12.0.6",
45
+ "@semantic-release/npm": "13.1.5",
46
+ "@semantic-release/release-notes-generator": "14.1.0",
47
+ "@stylistic/eslint-plugin": "^5.10.0",
37
48
  "@types/async-lock": "^1.4.2",
38
- "@types/node": "^22.17.2",
49
+ "@types/node": "^24.12.0",
39
50
  "@types/node-persist": "^3.1.8",
40
- "eslint": "^9.34.0",
41
- "homebridge": "^1.11.0",
42
- "rimraf": "^6.0.1",
51
+ "eslint": "^10.0.0",
52
+ "homebridge": "^1.11.3",
53
+ "rimraf": "^6.1.3",
54
+ "semantic-release": "25.0.3",
43
55
  "ts-node": "^10.9.2",
44
- "typescript": "^5.9.2",
45
- "typescript-eslint": "^8.40.0"
56
+ "typescript": "^5.9.3",
57
+ "typescript-eslint": "^8.57.1"
46
58
  },
47
59
  "dependencies": {
48
60
  "async-lock": "^1.4.1",
49
61
  "node-persist": "^4.0.4"
50
62
  },
51
- "scripts": {
52
- "lint": "eslint src",
53
- "lintAndFix": "eslint --fix src",
54
- "debug": "tsc && homebridge -I -D",
55
- "build": "rimraf ./dist && tsc"
56
- }
57
- }
63
+ "packageManager": "pnpm@10.32.1+sha512.a706938f0e89ac1456b6563eab4edf1d1faf3368d1191fc5c59790e96dc918e4456ab2e67d613de1043d2e8c81f87303e6b40d4ffeca9df15ef1ad567348f2be"
64
+ }
package/renovate.json ADDED
@@ -0,0 +1,20 @@
1
+ {
2
+ "$schema": "https://docs.renovatebot.com/renovate-schema.json",
3
+ "extends": ["config:recommended"],
4
+ "labels": ["dependencies"],
5
+ "lockFileMaintenance": {
6
+ "enabled": true,
7
+ "schedule": ["before 7am on Monday"],
8
+ "commitMessageAction": "upgrade",
9
+ "automerge": true
10
+ },
11
+ "packageRules": [
12
+ {
13
+ "matchUpdateTypes": ["minor", "patch", "pin", "digest"],
14
+ "groupName": "non-major dependencies",
15
+ "automerge": true
16
+ }
17
+ ],
18
+ "commitMessagePrefix": "build(deps):",
19
+ "dependencyDashboard": true
20
+ }
@@ -1,22 +0,0 @@
1
- # To get started with Dependabot version updates, you'll need to specify which
2
- # package ecosystems to update and where the package manifests are located.
3
- # Please see the documentation for all configuration options:
4
- # https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
5
-
6
- version: 2
7
- updates:
8
-
9
- # Maintain dependencies for GitHub Actions
10
- - package-ecosystem: "github-actions"
11
- directory: "/"
12
- schedule:
13
- interval: "monthly"
14
-
15
- # Maintain dependencies for npm
16
- - package-ecosystem: "npm"
17
- directory: "/"
18
- schedule:
19
- interval: "monthly"
20
- allow:
21
- - dependency-type: "production"
22
- rebase-strategy: "disabled"
@@ -1,27 +0,0 @@
1
- # This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node
2
- # For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
3
-
4
- name: Audit
5
- permissions:
6
- contents: read
7
-
8
- on:
9
-
10
- schedule:
11
- - cron: '0 0 * * *'
12
- workflow_dispatch:
13
-
14
- jobs:
15
- build:
16
-
17
- runs-on: ubuntu-latest
18
-
19
- steps:
20
- - uses: actions/checkout@v4
21
- - uses: pnpm/action-setup@v4
22
- - uses: actions/setup-node@v4.4.0
23
- with:
24
- node-version: latest
25
- cache: pnpm
26
- - run: pnpm install --frozen-lockfile
27
- - run: pnpm audit -P
@@ -1,15 +0,0 @@
1
- name: Auto-merge
2
- on: pull_request
3
-
4
- jobs:
5
- automerge:
6
- permissions:
7
- pull-requests: write
8
- contents: write
9
- runs-on: ubuntu-latest
10
- if: github.actor == 'dependabot[bot]' || ((startsWith(github.event.pull_request.title, 'Bump to version ') || startsWith(github.event.pull_request.title, 'Update PNPM')) && (github.actor == 'github-actions' || github.actor == 'teh-hippo'))
11
- steps:
12
- - uses: actions/checkout@v4
13
- - run: gh pr merge --rebase --delete-branch --auto "${{ github.event.pull_request.number }}"
14
- env:
15
- GH_TOKEN: ${{ github.token }}
@@ -1,34 +0,0 @@
1
- # This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node
2
- # For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
3
-
4
- name: Build Homebridge 2.x
5
-
6
- permissions:
7
- contents: read
8
-
9
- on:
10
- pull_request:
11
- schedule:
12
- - cron: '0 0 * * *'
13
-
14
- jobs:
15
-
16
- build:
17
-
18
- runs-on: ubuntu-latest
19
-
20
- steps:
21
- - uses: actions/checkout@v4
22
- - uses: pnpm/action-setup@v4
23
- - run: |
24
- sed -i -e 's/"homebridge": "\^[0-9]\.[0-9]\.[0-9]/"homebridge": "^2.0.0-beta.0/g' package.json
25
- - uses: actions/setup-node@v4.4.0
26
- with:
27
- node-version: latest
28
- cache: pnpm
29
- - run: pnpm install --no-frozen-lockfile
30
- - name: Show Homebridge 2.0 Version
31
- run: |
32
- pnpm ls homebridge --parseable | grep -o '@\([^\/]\+\)'
33
- - run: pnpm build
34
- - run: pnpm lint
@@ -1,38 +0,0 @@
1
- # This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node
2
- # For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
3
-
4
- name: Update PNPM
5
-
6
- on:
7
-
8
- schedule:
9
- - cron: '37 13 1 * *'
10
- workflow_dispatch:
11
-
12
- permissions:
13
- contents: write
14
- pull-requests: write
15
-
16
- jobs:
17
- build:
18
-
19
- runs-on: ubuntu-latest
20
-
21
- steps:
22
- - uses: actions/checkout@v4
23
- - uses: pnpm/action-setup@v4
24
- - uses: actions/setup-node@v4.4.0
25
- with:
26
- node-version: latest
27
- cache: pnpm
28
- - run: corepack use pnpm@latest
29
- - name: Create Pull Request
30
- uses: peter-evans/create-pull-request@v7
31
- with:
32
- delete-branch: true
33
- title: Update PNPM
34
- commit-message: |
35
- Update to the latest PNPM manager.
36
- token: ${{ secrets.PAT }}
37
- committer: AutoHippo <auto@hippo.org>
38
- branch: autohippo/update-pnpm-${{ github.run_number }}
@@ -1,62 +0,0 @@
1
- # This workflow will run tests using node and then publish a package to GitHub Packages when a release is created
2
- # For more information see: https://help.github.com/actions/language-and-framework-guides/publishing-nodejs-packages
3
-
4
- name: Release
5
-
6
- on:
7
- release:
8
- types: [published]
9
-
10
- jobs:
11
- publish:
12
- runs-on: ubuntu-latest
13
- permissions:
14
- contents: read
15
- packages: write
16
- steps:
17
- - uses: actions/checkout@v4
18
- - uses: pnpm/action-setup@v4
19
- - uses: actions/setup-node@v4.4.0
20
- with:
21
- node-version: latest
22
- cache: pnpm
23
- registry-url: https://registry.npmjs.org/
24
- - run: pnpm install --frozen-lockfile
25
- - run: pnpm build
26
- - run: pnpm publish --no-git-checks
27
- env:
28
- NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
29
-
30
- update-build-number:
31
- needs: publish
32
- runs-on: ubuntu-latest
33
- permissions:
34
- pull-requests: write
35
- contents: write
36
- steps:
37
- - uses: actions/checkout@v4
38
- with:
39
- ref: main
40
- fetch-tags: true
41
- - uses: pnpm/action-setup@v4
42
- - uses: actions/setup-node@v4.4.0
43
- with:
44
- node-version: latest
45
- cache: pnpm
46
- registry-url: https://registry.npmjs.org/
47
- - run: pnpm version patch --no-git-tag-version
48
- - name: get-npm-version
49
- id: version-after
50
- uses: martinbeentjes/npm-get-version-action@v1.3.1
51
- - name: Create Pull Request
52
- uses: peter-evans/create-pull-request@v7
53
- with:
54
- add-paths: |
55
- package.json
56
- delete-branch: true
57
- title: Bump to version ${{ steps.version-after.outputs.current-version }}
58
- commit-message: |
59
- Bump to version ${{ steps.version-after.outputs.current-version }}
60
- token: ${{ secrets.PAT }}
61
- committer: AutoHippo <auto@hippo.org>
62
- branch: bump-to-version-${{ steps.version-after.outputs.current-version }}