Skip to content

Commit 1965ee4

Browse files
authored
Merge pull request #192 from vue-pivottable/fix/docs-and-pr-update
docs: 문서 개선 및 PR 자동 업데이트 기능 추가
2 parents b475193 + a59a151 commit 1965ee4

File tree

8 files changed

+182
-28
lines changed

8 files changed

+182
-28
lines changed

.changeset/docs-and-pr-update.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
"@vue-pivottable/plotly-renderer": patch
3+
---
4+
5+
chore: plotly-renderer peerDependency를 'latest'로 변경
6+
7+
- 베타 버전 대신 'latest'를 사용하여 더 유연한 버전 관리 가능

.github/workflows/release-develop.yml

Lines changed: 75 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,4 +120,78 @@ jobs:
120120
121121
This is a pre-release version. It may contain bugs and breaking changes.
122122
123-
Install with: `npm install vue-pivottable@beta`
123+
Install with: `npm install vue-pivottable@beta`
124+
125+
- name: Create or Update PR to main
126+
if: steps.changesets-check.outputs.has_changesets == 'true'
127+
env:
128+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
129+
run: |
130+
# 현재 버전 가져오기
131+
VERSION=$(node -p "require('./package.json').version")
132+
133+
# 기존 PR 확인
134+
PR_NUMBER=$(gh pr list --base main --head develop --state open --json number -q '.[0].number')
135+
136+
if [ -z "$PR_NUMBER" ]; then
137+
# 새 PR 생성
138+
gh pr create \
139+
--base main \
140+
--head develop \
141+
--title "Release: $VERSION" \
142+
--body "## 🚀 Release $VERSION
143+
144+
This PR contains the latest beta release ready for production.
145+
146+
### Beta Version
147+
- $VERSION
148+
149+
### Packages to be released
150+
- vue-pivottable: $VERSION
151+
- Check sub-packages for version updates
152+
153+
### Pre-release Testing
154+
- Beta version has been published to npm with tag @beta
155+
- Install with: \`npm install vue-pivottable@beta\`
156+
157+
### Release Notes
158+
See [CHANGELOG.md](./CHANGELOG.md) for details.
159+
160+
---
161+
⚠️ **Note**: This PR will be automatically updated if new changes are pushed to develop."
162+
else
163+
# 기존 PR 업데이트
164+
echo "Updating existing PR #$PR_NUMBER with new beta version..."
165+
166+
gh pr edit $PR_NUMBER \
167+
--title "Release: $VERSION" \
168+
--body "## 🚀 Release $VERSION (Updated)
169+
170+
This PR has been automatically updated with the latest beta release.
171+
172+
### Current Beta Version
173+
- $VERSION
174+
175+
### Packages to be released
176+
- vue-pivottable: $VERSION
177+
- Check sub-packages for version updates
178+
179+
### Pre-release Testing
180+
- Beta version has been published to npm with tag @beta
181+
- Install with: \`npm install vue-pivottable@beta\`
182+
183+
### ⚠️ Important
184+
**This PR has been updated with new commits. Please review the changes again.**
185+
186+
### Release Notes
187+
See [CHANGELOG.md](./CHANGELOG.md) for details.
188+
189+
---
190+
Last updated: $(date -u +"%Y-%m-%d %H:%M:%S UTC")"
191+
192+
# PR을 ready for review 상태로 설정
193+
gh pr ready $PR_NUMBER
194+
195+
# auto-updated 라벨 추가
196+
gh pr edit $PR_NUMBER --add-label "auto-updated,needs-review"
197+
fi

AI_USAGE_GUIDELINES.md

Lines changed: 48 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -171,12 +171,56 @@ require → import 구문으로 변환
171171

172172
## 주요 지침
173173

174-
### 1. 점진적 접근
174+
### 1. 순차적 사고 (Sequential Thinking)
175+
- 복잡한 작업은 단계별로 나누어 접근
176+
- 각 단계를 명확히 정의하고 순서대로 진행
177+
- 단계별 완료 확인 후 다음 단계 진행
178+
179+
#### 예시: 다중 파일 작업
180+
```markdown
181+
## 작업 계획
182+
1. 문제 분석 및 영향 범위 파악
183+
2. 첫 번째 파일 수정
184+
3. 테스트 및 검증
185+
4. 두 번째 파일 수정
186+
5. 전체 통합 테스트
187+
```
188+
189+
### 2. 점진적 접근
175190
- 한 번에 하나의 문제만 해결
176191
- 각 단계마다 테스트 수행
177192
- 결과 보고 후 다음 단계 진행
178193

179-
### 2. 명확한 근거 제시
194+
### 3. MCP 서버 활용
195+
- **sequential-thinking MCP 서버가 설정된 경우**: 복잡한 문제 해결 시 활용
196+
- **context7 MCP 서버가 설정된 경우**: 기술적 이슈나 최신 내용 확인이 필요할 때 사용
197+
- MCP 서버가 없는 경우: 순차적 사고 방식으로 접근
198+
199+
#### MCP 서버 사용 예시
200+
```markdown
201+
# sequential-thinking 서버
202+
- 복잡한 버그 디버깅
203+
- 다단계 리팩토링 작업
204+
- 의존성 업데이트 영향 분석
205+
206+
# context7 서버
207+
- 최신 라이브러리 API 확인
208+
- 보안 이슈 검토
209+
- 성능 최적화 가이드
210+
```
211+
212+
### 4. Task 도구 활용
213+
- 여러 파일에 걸친 복잡한 검색이나 분석 작업 시 활용
214+
- 단순한 파일 읽기보다 복잡한 패턴 검색이나 코드 분석이 필요할 때
215+
216+
#### 예시: Task 도구 사용 케이스
217+
```markdown
218+
- ESLint 설정 파일과 관련된 모든 사용처 찾기
219+
- 특정 타입이 프로젝트 전체에서 어떻게 사용되는지 분석
220+
- 의존성 업데이트가 미치는 영향 범위 파악
221+
```
222+
223+
### 5. 명확한 근거 제시
180224
```markdown
181225
// 좋은 예시
182226
"RendererDefinition에서 renderer 속성이 실제로 사용되는 곳이 없습니다.
@@ -187,14 +231,14 @@ grep 검색 결과: [검색 결과 첨부]
187231
"이 속성은 필요 없어 보입니다."
188232
```
189233

190-
### 3. 사용자 의도 확인
234+
### 6. 사용자 의도 확인
191235
```markdown
192236
"기존 코드의 의도를 확인하고 싶습니다."
193237
"어떤 방향으로 진행할까요?"
194238
"이렇게 수정하는 것이 맞을까요?"
195239
```
196240

197-
### 4. 테스트 결과 공유
241+
### 7. 테스트 결과 공유
198242
```bash
199243
# 항상 다음 명령어로 검증
200244
pnpm lint # ESLint 검사

README.ko.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
# Vue Pivottable
22

3+
> [English](./README.md) | 한국어
4+
35
[![All Contributors](https://img.shields.io/badge/all_contributors-3-orange.svg?style=flat-square)](#contributors-)
46
[![npm](https://flat.badgen.net/npm/v/vue-pivottable)](https://npmjs.com/package/vue-pivottable)
57
[![npm](https://flat.badgen.net/npm/dt/vue-pivottable)](https://npmjs.com/package/vue-pivottable)
68
[![npm](https://flat.badgen.net/npm/license/vue-pivottable)](https://flat.badgen.net/npm/license/vue-pivottable)
79
[![jsdelivr](https://data.jsdelivr.com/v1/package/npm/vue-pivottable/badge)](https://www.jsdelivr.com/package/npm/vue-pivottable)
810

9-
> [English](./README.md) | 한국어
10-
1111
**Vue 3용 피벗 테이블 컴포넌트**
1212

1313
`vue-pivottable`은 Vue 3 호환 피벗 테이블 컴포넌트로, 인기 있는 [react-pivottable](https://github.com/plotly/react-pivottable)의 Vue 래퍼입니다. 이 라이브러리를 사용하면 대용량 데이터셋을 피벗 테이블 UI에서 쉽게 요약, 변환, 시각화할 수 있습니다.

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# Vue Pivottable
22

3+
> English | [한국어](./README.ko.md)
4+
35
[![All Contributors](https://img.shields.io/badge/all_contributors-3-orange.svg?style=flat-square)](#contributors-)
46
[![npm](https://flat.badgen.net/npm/v/vue-pivottable)](https://npmjs.com/package/vue-pivottable)
57
[![npm](https://flat.badgen.net/npm/dt/vue-pivottable)](https://npmjs.com/package/vue-pivottable)

RELEASE_STRATEGY.md

Lines changed: 45 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# Release Strategy
22

3+
> English | [한국어](./RELEASE_STRATEGY.ko.md)
4+
35
## Overview
46

57
This document outlines the release strategy for the vue3-pivottable monorepo, which uses Changesets for version management and supports independent package releases.
@@ -79,16 +81,16 @@ Our monorepo contains three independently versioned packages:
7981
graph TD
8082
A[Changeset Files] --> B{Which packages?}
8183
B -->|vue-pivottable| C[Main Package]
82-
B -->|@vue-pivottable/plotly-renderer| D[Plotly Renderer]
83-
B -->|@vue-pivottable/lazy-table-renderer| E[Lazy Table Renderer]
84+
B -->|plotly-renderer| D[Plotly Renderer]
85+
B -->|lazy-table-renderer| E[Lazy Table Renderer]
8486
8587
C --> F[Independent Version]
8688
D --> G[Independent Version]
8789
E --> H[Independent Version]
8890
89-
F --> I[Build Publish if changed]
90-
G --> J[Build Publish if changed]
91-
H --> K[Build Publish if changed]
91+
F --> I[Build then Publish if changed]
92+
G --> J[Build then Publish if changed]
93+
H --> K[Build then Publish if changed]
9294
```
9395

9496
### Configuration
@@ -200,6 +202,38 @@ vue-pivottable: 1.2.0-beta.1234567890 → 1.2.0
200202
3. **Independent versions** - Don't bump unchanged packages
201203
4. **Quality first** - All checks must pass before publish
202204

205+
## Handling Updates During Release Process
206+
207+
### Scenario: Changes to develop after PR to main
208+
209+
When a PR from develop to main is already open and new changes are pushed to develop:
210+
211+
1. **Automatic PR Update**
212+
- The release-develop workflow automatically detects existing PR
213+
- Updates PR title with new beta version
214+
- Updates PR description with timestamp and new version info
215+
- Adds `auto-updated` and `needs-review` labels
216+
- Sets PR back to "ready for review" state
217+
218+
2. **Review Process**
219+
- Reviewers are notified of the update via labels
220+
- Previous approvals remain but re-review is recommended
221+
- PR description shows clear "Updated" status with timestamp
222+
223+
3. **Benefits**
224+
- PR history and discussions are preserved
225+
- No manual intervention required
226+
- Clear audit trail of all beta versions
227+
228+
### Example Flow
229+
```
230+
1. v1.2.0-beta.1234567890 → PR #123 created
231+
2. New fix pushed to develop
232+
3. v1.2.1-beta.2345678901 → PR #123 automatically updated
233+
4. Reviewers see "auto-updated" label and re-review
234+
5. Once approved, merge to main triggers stable release
235+
```
236+
203237
## Troubleshooting
204238

205239
### Beta version not publishing?
@@ -215,4 +249,9 @@ vue-pivottable: 1.2.0-beta.1234567890 → 1.2.0
215249
### Type errors in CI but not locally?
216250
- Run `pnpm typecheck` locally
217251
- Check all workspace packages: `pnpm -r typecheck`
218-
- Ensure dependencies are up to date
252+
- Ensure dependencies are up to date
253+
254+
### PR not updating automatically?
255+
- Check GitHub Actions permissions
256+
- Verify GITHUB_TOKEN has write access to PRs
257+
- Check if PR is in open state

packages/plotly-renderer/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
},
4646
"peerDependencies": {
4747
"vue": "^3.2.0",
48-
"vue-pivottable": "1.0.1"
48+
"vue-pivottable": "latest"
4949
},
5050
"devDependencies": {
5151
"@vitejs/plugin-vue": "^5.2.1",

pnpm-lock.yaml

Lines changed: 2 additions & 14 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)