mcp-rubber-duck 1.2.2 โ†’ 1.2.4

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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ ## [1.2.4](https://github.com/nesquikm/mcp-rubber-duck/compare/v1.2.3...v1.2.4) (2025-11-17)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * avoid npm ci on ARM64 by copying node_modules from builder ([b5a9777](https://github.com/nesquikm/mcp-rubber-duck/commit/b5a977772c44a138dc65554e8f2448be63fb0976))
7
+
8
+ ## [1.2.3](https://github.com/nesquikm/mcp-rubber-duck/compare/v1.2.2...v1.2.3) (2025-11-17)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * resolve js-yaml security vulnerability with package override ([822a550](https://github.com/nesquikm/mcp-rubber-duck/commit/822a550397cb9b3e3966a8c5335c2ab1182bfd91))
14
+
1
15
  ## [1.2.2](https://github.com/nesquikm/mcp-rubber-duck/compare/v1.2.1...v1.2.2) (2025-09-17)
2
16
 
3
17
  ## [1.2.1](https://github.com/nesquikm/mcp-rubber-duck/compare/v1.2.0...v1.2.1) (2025-09-17)
package/Dockerfile CHANGED
@@ -32,13 +32,15 @@ WORKDIR /app
32
32
  # Copy package files
33
33
  COPY package*.json ./
34
34
 
35
- # Install production dependencies only
36
- RUN npm ci --only=production && \
37
- npm cache clean --force
35
+ # Copy production node_modules from builder (avoids npm ci issues with QEMU)
36
+ COPY --from=builder /app/node_modules ./node_modules
38
37
 
39
38
  # Copy built application from builder
40
39
  COPY --from=builder /app/dist ./dist
41
40
 
41
+ # Remove dev dependencies to reduce image size
42
+ RUN npm prune --production
43
+
42
44
  # Copy configuration examples
43
45
  COPY config/config.example.json ./config/
44
46
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcp-rubber-duck",
3
- "version": "1.2.2",
3
+ "version": "1.2.4",
4
4
  "description": "An MCP server that bridges to multiple OpenAI-compatible LLMs - your AI rubber duck debugging panel",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -61,5 +61,8 @@
61
61
  "ts-jest": "^29.0.0",
62
62
  "tsx": "^4.0.0",
63
63
  "typescript": "^5.0.0"
64
+ },
65
+ "overrides": {
66
+ "js-yaml": "^4.1.1"
64
67
  }
65
68
  }
@@ -1,138 +0,0 @@
1
- name: ๐Ÿณ Docker Build & Deploy
2
-
3
- on:
4
- push:
5
- branches: [ master, main ]
6
- paths-ignore:
7
- - '**.md'
8
- - 'docs/**'
9
- - '.gitignore'
10
- pull_request:
11
- branches: [ master, main ]
12
- paths-ignore:
13
- - '**.md'
14
- - 'docs/**'
15
- - '.gitignore'
16
-
17
- env:
18
- REGISTRY: ghcr.io
19
- IMAGE_NAME: ${{ github.repository }}
20
-
21
- jobs:
22
- test:
23
- name: ๐Ÿงช Test
24
- runs-on: ubuntu-latest
25
- steps:
26
- - name: ๐Ÿ“ฅ Checkout
27
- uses: actions/checkout@v4
28
-
29
- - name: ๐Ÿ“ฆ Setup Node.js
30
- uses: actions/setup-node@v4
31
- with:
32
- node-version: '20'
33
- cache: 'npm'
34
-
35
- - name: ๐Ÿ“ฅ Install dependencies
36
- run: npm ci
37
-
38
- # Temporarily disabled lint to fix deployment
39
- # - name: ๐Ÿ” Lint
40
- # run: npm run lint
41
-
42
- - name: ๐Ÿ—๏ธ Build
43
- run: npm run build
44
-
45
- - name: ๐Ÿ”ฌ Type check
46
- run: npm run typecheck
47
-
48
- # Temporarily disabled tests to fix deployment
49
- # - name: ๐Ÿงช Test
50
- # run: npm test
51
-
52
- build-and-push:
53
- name: ๐Ÿณ Build & Push
54
- needs: test
55
- runs-on: ubuntu-latest
56
- # Only build images on push to master (not PRs)
57
- if: github.event_name == 'push' && github.ref == 'refs/heads/master'
58
- permissions:
59
- contents: read
60
- packages: write
61
-
62
- steps:
63
- - name: ๐Ÿ“ฅ Checkout
64
- uses: actions/checkout@v4
65
-
66
- - name: ๐Ÿ› ๏ธ Set up QEMU
67
- uses: docker/setup-qemu-action@v3
68
-
69
- - name: ๐Ÿ› ๏ธ Set up Docker Buildx
70
- uses: docker/setup-buildx-action@v3
71
-
72
- - name: ๐Ÿ”‘ Login to Container Registry
73
- uses: docker/login-action@v3
74
- with:
75
- registry: ${{ env.REGISTRY }}
76
- username: ${{ github.actor }}
77
- password: ${{ secrets.GITHUB_TOKEN }}
78
-
79
- - name: ๐Ÿท๏ธ Extract metadata
80
- id: meta
81
- uses: docker/metadata-action@v5
82
- with:
83
- images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
84
- tags: |
85
- type=ref,event=branch
86
- type=ref,event=pr
87
- type=raw,value=latest,enable={{is_default_branch}}
88
- type=raw,value={{date 'YYYY-MM-DD'}},enable={{is_default_branch}}
89
- labels: |
90
- org.opencontainers.image.title=MCP Rubber Duck
91
- org.opencontainers.image.description=Multi-platform MCP server for multiple OpenAI-compatible LLMs
92
-
93
- - name: ๐Ÿณ Build and push Docker image
94
- id: build
95
- uses: docker/build-push-action@v5
96
- with:
97
- context: .
98
- platforms: linux/amd64,linux/arm64
99
- push: true
100
- tags: ${{ steps.meta.outputs.tags }}
101
- labels: ${{ steps.meta.outputs.labels }}
102
- cache-from: type=gha
103
- cache-to: type=gha,mode=max
104
- build-args: |
105
- BUILDKIT_INLINE_CACHE=1
106
-
107
- - name: ๐Ÿ“ Image digest
108
- run: echo ${{ steps.build.outputs.digest }}
109
-
110
- - name: ๐Ÿ”ง Make package public
111
- if: success()
112
- run: |
113
- # Wait a moment for package to appear
114
- sleep 10
115
-
116
- # Try to make package public (may fail if already public)
117
- gh api --method PATCH \
118
- "user/packages/container/${{ github.event.repository.name }}" \
119
- --field visibility=public \
120
- --silent || echo "Package may already be public or visibility change failed"
121
- env:
122
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
123
-
124
- - name: ๐Ÿ“Š Image size
125
- if: success()
126
- run: |
127
- echo "๐ŸŽ‰ **Docker Image Built Successfully!**" >> $GITHUB_STEP_SUMMARY
128
- echo "" >> $GITHUB_STEP_SUMMARY
129
- echo "๐Ÿ“ฆ **Image Details:**" >> $GITHUB_STEP_SUMMARY
130
- echo "- ๐Ÿท๏ธ **Tags:** \`${{ steps.meta.outputs.tags }}\`" >> $GITHUB_STEP_SUMMARY
131
- echo "- ๐Ÿ—๏ธ **Platforms:** AMD64, ARM64" >> $GITHUB_STEP_SUMMARY
132
- echo "- ๐Ÿ“ **Registry:** ${{ env.REGISTRY }}" >> $GITHUB_STEP_SUMMARY
133
- echo "" >> $GITHUB_STEP_SUMMARY
134
- echo "๐Ÿš€ **Quick Start:**" >> $GITHUB_STEP_SUMMARY
135
- echo "\`\`\`bash" >> $GITHUB_STEP_SUMMARY
136
- echo "docker pull ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest" >> $GITHUB_STEP_SUMMARY
137
- echo "docker compose up -d" >> $GITHUB_STEP_SUMMARY
138
- echo "\`\`\`" >> $GITHUB_STEP_SUMMARY