raycast-rsync-extension 1.0.8 → 1.0.15

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.
@@ -0,0 +1,80 @@
1
+ name: Bump patch version
2
+
3
+ on:
4
+ workflow_dispatch:
5
+
6
+ permissions:
7
+ contents: read
8
+
9
+ jobs:
10
+ bumpPatchVersion:
11
+ name: Bump package.json patch version
12
+ runs-on: ubuntu-latest
13
+
14
+ permissions:
15
+ contents: write
16
+ pull-requests: write
17
+
18
+ steps:
19
+ - name: Harden the runner (Audit all outbound calls)
20
+ uses: step-security/harden-runner@05e31511f85b41b11d1cf0ef85d0992719546e2c # v2.21.0
21
+ with:
22
+ egress-policy: audit
23
+
24
+ - name: Checkout code
25
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
26
+ with:
27
+ fetch-depth: 0
28
+ fetch-tags: true
29
+
30
+ - name: Ensure main has commits after latest tag
31
+ run: |
32
+ set -euo pipefail
33
+ git fetch origin main --tags
34
+
35
+ if ! git rev-parse --verify origin/main >/dev/null 2>&1; then
36
+ echo "::error::Could not resolve origin/main"
37
+ exit 1
38
+ fi
39
+
40
+ LATEST_TAG="$(git tag --merged origin/main --sort=-version:refname | head -n1 || true)"
41
+ if [ -z "$LATEST_TAG" ]; then
42
+ echo "No tags on main's history yet; continuing (no baseline tag to compare)."
43
+ exit 0
44
+ fi
45
+
46
+ COUNT="$(git rev-list --count "${LATEST_TAG}"..origin/main)"
47
+ if [ "$COUNT" -eq 0 ]; then
48
+ echo "::error::main has no commits after tag '${LATEST_TAG}'. Merge or push changes before bumping the patch version."
49
+ exit 1
50
+ fi
51
+
52
+ echo "main is ${COUNT} commit(s) ahead of tag '${LATEST_TAG}'."
53
+
54
+ - name: Setup Node
55
+ uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
56
+ with:
57
+ node-version: "22"
58
+
59
+ - name: Bump patch version
60
+ id: bump
61
+ run: |
62
+ npm version patch --no-git-tag-version
63
+ VERSION=$(node -p "require('./package.json').version")
64
+ echo "version=$VERSION" >> $GITHUB_OUTPUT
65
+ echo "New version: $VERSION"
66
+
67
+ - name: Create Pull Request
68
+ uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1 # v8.1.1
69
+ with:
70
+ commit-message: "chore: bump version to ${{ steps.bump.outputs.version }}"
71
+ branch: "chore/bump-patch-version-${{ github.run_id }}"
72
+ delete-branch: true
73
+ title: "chore: bump version to ${{ steps.bump.outputs.version }}"
74
+ body: |
75
+ This PR bumps the **patch** version in `package.json` (via `npm version patch --no-git-tag-version`).
76
+
77
+ Triggered manually from [bump-patch-version](https://github.com/${{ github.repository }}/actions/workflows/bump-patch-version.yml).
78
+
79
+ After merge, the [Publish](https://github.com/${{ github.repository }}/actions/workflows/publish.yml) workflow can publish the new version when it runs on `main`.
80
+ labels: "ci, maintenance"
@@ -14,12 +14,12 @@ jobs:
14
14
  runs-on: ubuntu-latest
15
15
  steps:
16
16
  - name: Checkout
17
- uses: actions/checkout@v6
17
+ uses: actions/checkout@v7
18
18
 
19
19
  - name: Setup Node.js
20
- uses: actions/setup-node@v6
20
+ uses: actions/setup-node@v7
21
21
  with:
22
- node-version: 20
22
+ node-version: 22
23
23
  cache: npm
24
24
 
25
25
  - name: Install dependencies
@@ -33,12 +33,12 @@ jobs:
33
33
  runs-on: ubuntu-latest
34
34
  steps:
35
35
  - name: Checkout
36
- uses: actions/checkout@v6
36
+ uses: actions/checkout@v7
37
37
 
38
38
  - name: Setup Node.js
39
- uses: actions/setup-node@v6
39
+ uses: actions/setup-node@v7
40
40
  with:
41
- node-version: 20
41
+ node-version: 22
42
42
  cache: npm
43
43
 
44
44
  - name: Install dependencies
@@ -52,12 +52,12 @@ jobs:
52
52
  runs-on: ubuntu-latest
53
53
  steps:
54
54
  - name: Checkout
55
- uses: actions/checkout@v6
55
+ uses: actions/checkout@v7
56
56
 
57
57
  - name: Setup Node.js
58
- uses: actions/setup-node@v6
58
+ uses: actions/setup-node@v7
59
59
  with:
60
- node-version: 20
60
+ node-version: 22
61
61
  cache: npm
62
62
 
63
63
  - name: Install dependencies
@@ -71,12 +71,12 @@ jobs:
71
71
  runs-on: ubuntu-latest
72
72
  steps:
73
73
  - name: Checkout
74
- uses: actions/checkout@v6
74
+ uses: actions/checkout@v7
75
75
 
76
76
  - name: Setup Node.js
77
- uses: actions/setup-node@v6
77
+ uses: actions/setup-node@v7
78
78
  with:
79
- node-version: 20
79
+ node-version: 22
80
80
  cache: npm
81
81
 
82
82
  - name: Install dependencies
@@ -90,12 +90,12 @@ jobs:
90
90
  runs-on: ubuntu-latest
91
91
  steps:
92
92
  - name: Checkout
93
- uses: actions/checkout@v6
93
+ uses: actions/checkout@v7
94
94
 
95
95
  - name: Setup Node.js
96
- uses: actions/setup-node@v6
96
+ uses: actions/setup-node@v7
97
97
  with:
98
- node-version: 20
98
+ node-version: 22
99
99
  cache: npm
100
100
 
101
101
  - name: Install dependencies
@@ -0,0 +1,29 @@
1
+ # After main advances or a release is published, asks Dependabot to rebase all open Dependabot PRs
2
+ # (same as commenting @dependabot rebase). Uses the Dependabot integration, not a local git rebase.
3
+ #
4
+ # Required: repository secret GH_PA_TOKEN — a fine-grained or classic PAT that can comment on pull
5
+ # requests. The default GITHUB_TOKEN is read-only for workflows triggered from Dependabot PRs and is
6
+ # not sufficient for this action.
7
+ name: Rebase Dependabot PRs
8
+
9
+ on:
10
+ push:
11
+ branches: [main]
12
+ release:
13
+ types: [published]
14
+
15
+ permissions:
16
+ contents: read
17
+
18
+ jobs:
19
+ auto-rebase:
20
+ name: Rebase Dependabot PRs
21
+ runs-on: ubuntu-latest
22
+ timeout-minutes: 5
23
+ steps:
24
+ - name: Rebase
25
+ uses: bbeesley/gha-auto-dependabot-rebase@e2ff6339872bb93d443fba3b165ac2a14af43570
26
+ env:
27
+ GITHUB_TOKEN: ${{ secrets.GH_PA_TOKEN }}
28
+ with:
29
+ task: rebase
@@ -32,12 +32,12 @@ jobs:
32
32
  name: ${{ steps.package-info.outputs.name }}
33
33
  steps:
34
34
  - name: Checkout code
35
- uses: actions/checkout@v6
35
+ uses: actions/checkout@v7
36
36
 
37
37
  - name: Setup Node.js
38
- uses: actions/setup-node@v6
38
+ uses: actions/setup-node@v7
39
39
  with:
40
- node-version: "20"
40
+ node-version: "22"
41
41
  cache: "npm"
42
42
 
43
43
  - name: Get package info
@@ -88,14 +88,14 @@ jobs:
88
88
  id-token: write
89
89
  steps:
90
90
  - name: Checkout code
91
- uses: actions/checkout@v6
91
+ uses: actions/checkout@v7
92
92
  with:
93
93
  fetch-depth: 0
94
94
 
95
95
  - name: Setup Node.js
96
- uses: actions/setup-node@v6
96
+ uses: actions/setup-node@v7
97
97
  with:
98
- node-version: "20"
98
+ node-version: "22"
99
99
  cache: "npm"
100
100
 
101
101
  - name: Install dependencies
@@ -139,6 +139,24 @@ jobs:
139
139
  env:
140
140
  NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
141
141
 
142
+ - name: Publish to npmjs
143
+ run: |
144
+ PACKAGE_NAME="${{ needs.check-version.outputs.name }}"
145
+ VERSION=${{ needs.check-version.outputs.version }}
146
+ OWNER="${{ github.repository_owner }}"
147
+
148
+ echo "Publishing $PACKAGE_NAME@$VERSION to npmjs..."
149
+
150
+ npm config set @dytsou:registry https://registry.npmjs.org
151
+ npm config set registry https://registry.npmjs.org
152
+ npm config set //registry.npmjs.org/:_authToken "$NODE_AUTH_TOKEN"
153
+
154
+ npm publish --access public --registry=https://registry.npmjs.org
155
+
156
+ echo "Successfully published $PACKAGE_NAME@$VERSION to npmjs"
157
+ env:
158
+ NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
159
+
142
160
  - name: Create Git tag
143
161
  run: |
144
162
  VERSION=${{ needs.check-version.outputs.version }}
@@ -159,7 +177,7 @@ jobs:
159
177
  fi
160
178
 
161
179
  - name: Create GitHub Release
162
- uses: softprops/action-gh-release@v2
180
+ uses: softprops/action-gh-release@v3
163
181
  with:
164
182
  tag_name: v${{ needs.check-version.outputs.version }}
165
183
  name: v${{ needs.check-version.outputs.version }}
@@ -202,11 +220,13 @@ jobs:
202
220
  run: |
203
221
  echo "## 📦 Publish Summary"
204
222
  echo "Package: ${{ needs.check-version.outputs.name }}@${{ needs.check-version.outputs.version }}"
205
- echo "✅ Successfully published to GitHub Packages"
223
+ echo "✅ Successfully published to GitHub Packages and npmjs"
206
224
  echo "🏷️ Created tag: v${{ needs.check-version.outputs.version }}"
207
225
  echo "📝 Created release: v${{ needs.check-version.outputs.version }}"
208
226
  echo ""
209
227
  echo "### 🔗 Links"
228
+ echo "- **npmjs**: https://www.npmjs.com/package/@${{ github.repository_owner }}/${{ needs.check-version.outputs.name }}"
210
229
  echo "- **GitHub Packages**: https://github.com/${{ github.repository }}/packages"
211
- echo "- **Install Command**: npm install @${{ github.repository_owner }}/${{ needs.check-version.outputs.name }} --registry=https://npm.pkg.github.com"
230
+ echo "- **Install Command (npmjs)**: npm install @${{ github.repository_owner }}/${{ needs.check-version.outputs.name }}"
231
+ echo "- **Install Command (GitHub Packages)**: npm install @${{ github.repository_owner }}/${{ needs.check-version.outputs.name }} --registry=https://npm.pkg.github.com"
212
232
  echo "- **Release**: https://github.com/${{ github.repository }}/releases/tag/v${{ needs.check-version.outputs.version }}"
@@ -13,7 +13,7 @@ jobs:
13
13
  contents: write
14
14
  steps:
15
15
  - name: Checkout code
16
- uses: actions/checkout@v6
16
+ uses: actions/checkout@v7
17
17
  with:
18
18
  token: ${{ secrets.GITHUB_TOKEN }}
19
19
  persist-credentials: true
package/eslint.config.js CHANGED
@@ -2,7 +2,7 @@ const raycastConfig = require("@raycast/eslint-config");
2
2
 
3
3
  // Flatten in case any imported configs are arrays (e.g., prettier flat config)
4
4
  const baseConfigs = raycastConfig.flatMap((config) =>
5
- Array.isArray(config) ? config : [config]
5
+ Array.isArray(config) ? config : [config],
6
6
  );
7
7
 
8
8
  module.exports = [
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://www.raycast.com/schemas/extension.json",
3
3
  "name": "raycast-rsync-extension",
4
- "version": "1.0.8",
4
+ "version": "1.0.15",
5
5
  "title": "Rsync File Transfer",
6
6
  "description": "Transfer files between local and remote servers using rsync with SSH config integration",
7
7
  "icon": "icon.png",
@@ -11,6 +11,10 @@
11
11
  "Productivity"
12
12
  ],
13
13
  "license": "MIT",
14
+ "repository": {
15
+ "type": "git",
16
+ "url": "git+https://github.com/dytsou/raycast-rsync-extension.git"
17
+ },
14
18
  "commands": [
15
19
  {
16
20
  "name": "upload",
@@ -62,23 +66,24 @@
62
66
  ],
63
67
  "dependencies": {
64
68
  "@raycast/api": "^1.65.0",
65
- "@raycast/utils": "^1.19.1"
69
+ "@raycast/utils": "^2.2.2"
66
70
  },
67
71
  "devDependencies": {
68
72
  "@raycast/eslint-config": "^2.1.1",
69
- "@types/node": "^25.0.10",
70
- "@types/react": "19.0.10",
73
+ "@testing-library/jest-dom": "^7.0.0",
74
+ "@types/node": "^26.0.0",
75
+ "@types/react": "19.2.18",
71
76
  "@typescript-eslint/eslint-plugin": "^8.56.0",
72
77
  "@typescript-eslint/parser": "^8.56.0",
73
78
  "@vitest/ui": "^4.0.17",
74
79
  "eslint": "^10.0.0",
75
80
  "prettier": "^3.8.0",
76
81
  "react": "^19.0.0",
77
- "typescript": "^5.2.2",
82
+ "typescript": "^6.0.3",
78
83
  "vitest": "^4.0.17"
79
84
  },
80
85
  "overrides": {
81
- "@types/react": "19.0.10",
86
+ "@types/react": "19.2.18",
82
87
  "minimatch": "^10.2.1"
83
88
  },
84
89
  "scripts": {
package/tsconfig.json CHANGED
@@ -1,8 +1,10 @@
1
1
  {
2
2
  "compilerOptions": {
3
+ "ignoreDeprecations": "6.0",
3
4
  "target": "ES2021",
4
5
  "module": "commonjs",
5
6
  "lib": ["ES2021"],
7
+ "types": ["node", "react", "vitest/globals", "@testing-library/jest-dom"],
6
8
  "jsx": "react",
7
9
  "strict": true,
8
10
  "esModuleInterop": true,
package/vitest.config.ts CHANGED
@@ -4,5 +4,6 @@ export default defineConfig({
4
4
  test: {
5
5
  globals: true,
6
6
  environment: "node",
7
+ setupFiles: ["./src/test-setup.ts"],
7
8
  },
8
9
  });