Skip to main content

Command Palette

Search for a command to run...

swc-bot을 changeset으로 교체했다

Updated
1 min read

이 글은 두루미스에 올렸다가 옮긴 글입니다.


swc-bot을 changeset으로 교체했다

chore(ci): Integrate changeset by kdy1 · Pull Request #9284 · swc-project/swc

swc는 굉장히 특이한 방식으로 crate 버전들을 관리했었다. 나를 포함한 메인테이너가 PR을 승인하고

swc-bump:
 - swc_common
 - swc_ecma_ast --breaking

같은 댓글을 남기면 PR이 머지된 뒤 @swc-bot 계정으로 스크립트가 돌면서 swc_common, swc_ecma_astswc_ecma_ast에 의존하는 crate들의 버전을 올리는 커밋을 만들고 이를 푸시하는 방식이었다. 이런 방식을 사용했던 건 모듈이 많아서 바뀐 모듈만 한번에 배포할 방법이 필요했어서이다. 시작은 PR이 머지됐을 때 수정 사항들을 바로 배포하는 것이었다. Deno랑 일할 때 내가 자고 있는 시간에 배포 요청을 하는 일이 많았다. 그래서 방법을 고민하다가 봇을 만들어서 PR이 머지되면 자동으로 배포하게했다. 그렇게 구성했고, 한동안 잘 썼는데 너무 많이 배포하는 것 같아서 버전 bump만 해뒀다가 나중에 한번에 crate들을 배포하는 방식으로 바꿨다.

이 방식은 좀 나아졌지만, cargo의 lockfile에는 workspace에 포함된 패키지들도 포함되기 때문에 GitHub Actions의 캐시 활용도가 낮아진다는 나름 심각한 문제점이 있었다. 해결책을 고민하던 중, 변경 사항을 PR들에 넣는 문제는 changeset 파일과 changeset 봇을 활용하고, 버전 bump나 배포는 러스트 코드를 짜서 해결하면 되겠다는 생가이 들었고, 그래서 그렇게 구현해보니까 잘 작동했다.

More from this blog

한국의 학벌에 대한 생각

내 블로그의 제목이 kdy1: The way I think 인만큼 앞으로는 내 생각을 더 자주 올리려고 한다. 한국 기준으로, 학벌은 사람을 볼 때 꽤나 유용한 지표이지만, 절대적이지는 않다. 경험적인 얘기일 뿐이지만, 성균관대학교 자퇴생으로서 느낀 것들이 몇 가지 있다. 대학까지 간 사람의 학벌은 학습 능력 x 성실함 에 대체로 비례한다. 그래서 의미가

Apr 3, 20261 min read

인간 지능에 대한 메모장

최종 업데이트: 2026/03/15 지능의 유전 현재 인류 기준으로, 고지능자는 고지능 유전자가 많이 겹친 사람이다. 지능의 유전엔 X 염색체가 매우 중요한 역할을 한다. 그리고 이게 남자와 여자의 지능 분포 차이를 만든다. 극상위권에 여자가 거의 없는 이유가 이것이다. 고지능 X 염색체가 여자한테서 발현되려면 2개가 있어야 한다. 이는 인간의 생

Mar 15, 20262 min read

Ai 코딩 팁 2 (한국어)

발표 자료: https://gamma.app/docs/AI--2a52e7tk3eb1ch1 AI 활용법 관련해서 간단하게 발표를 했다. 발표 자료 앞쪽은 전에 블로그에 올린 글이랑 같은 내용이다. 이 글에서는 기존 글에서 다루지 않은 내용들을 다루겠다. 에러 메시지 및 로깅 구체적 타입 및 스키마 활용 any 타입은 사람에게도 위험하지만, AI에게는 더 위험하다. 마찬가지로, JSON.parse처럼 아무 제약 없는 파싱 느슨한 인터페이스 ...

Jan 30, 20265 min read

kdy1: The way I think

233 posts