목록전체 글 (64)
Oh, Well
패키지를 추가할 때 -D 플래그 하나의 차이가 단순한 분류 문제가 아니라, 빌드 결과물의 크기, 보안 취약점 노출 범위, 그리고 팀 간 협업의 명시성까지 결정한다. 어디에 넣을지 기준 없이 작업하면 프로덕션 번들에 테스트 라이브러리가 섞이거나, 반대로 런타임에 필요한 패키지가 누락되는 문제가 생긴다. 1. 세 가지 설치 방식이 존재하는 이유: 공사 현장 비유가장 빠르게 직관을 잡는 방법은 비유다.건물을 짓는다고 가정한다. 완공 후 건물 안에 남는 설비 (전기, 수도, 엘리베이터)dependencies앱이 실행될 때 실제로 필요한 코드공사 중에만 쓰는 도구 (드릴, 측량기, 비계)devDependencies개발/빌드/테스트 때만 필요, 완공 후 반출현장 어디서든 쓰는 작업자 개인 장비 (안전모, 공구벨트..
npm은 Node.js 생태계의 기본 패키지 매니저로 오랜 시간 자리를 지켜왔다. 하지만 단순히 "pnpm이 더 빠르다"는 이유로 전환을 검토한다면 핵심을 놓치는 것이다. 두 도구의 차이는 속도가 아니라 패키지를 디스크에 저장하고 프로젝트에 연결하는 구조 자체에 있다. 그 구조 차이가 디스크 효율, 의존성 안전성, CI 성능까지 연쇄적으로 결정한다. 1. 스토리지 구조: 복사 vs 하드링크npm은 패키지를 프로젝트마다 완전히 복사한다. react@18을 쓰는 프로젝트가 10개라면 동일한 파일이 10벌 디스크에 올라간다. 일반적인 Next.js 프로젝트 하나의 node_modules는 300–500MB에 달한다.pnpm은 다르게 작동한다. 전역 콘텐츠 주소 스토어(content-addressable st..
2026년 기준, 윈도우 11 환경 초기화 직후 가장 먼저 직면하는 피로감은 필수 유틸리티들의 과도한 수익화 모델이다. 무조건 최신 버전을 유지해야 한다는 과거의 소프트웨어 관리 정설은 유틸리티들이 배너 광고와 블로트웨어(Bloatware)를 강제 주입하는 현대 환경에서 완전히 무력화되었다.특히 윈도우 환경의 표준 압축 프로그램인 반디집은 7.0 버전 이후 무료 버전에 광고를 강제 적용하여 데스크톱 UI를 심각하게 훼손한다. 매번 OS 포맷 시점마다 광고 없는 구버전을 검색하는 리소스 낭비를 영구적으로 차단하기 위해, 가장 가볍고 안정적이었던 6.x 버전을 이 공간에 직접 호스팅하고 자동 업데이트를 원천 봉쇄한다.1. 설치 파일 아카이빙 및 스펙공식 홈페이지의 구버전 다운로드 지원은 언제든 단절될 수 있..
Windows 환경에서 corepack이나 npm을 통해 pnpm을 성공적으로 설치했더라도, PowerShell에서 명령어를 입력했을 때 실행이 차단되는 현상은 보안 정책에 따른 전형적인 병목 지점이다. 이를 단순히 우회하는 것이 아니라, 시스템 보안 계층을 이해하고 영구적으로 해결하는 방법을 정리한다.1. 문제의 원인: PowerShell 실행 정책(Execution Policy)Windows는 시스템 보호를 위해 기본적으로 스크립트(.ps1 파일) 실행을 제한한다. pnpm 명령어는 내부적으로 스크립트 파일을 호출하므로, 정책이 Restricted로 설정되어 있으면 아래와 같은 오류가 발생한다.오류 메시지 예시: > pnpm.ps1 파일을 로드할 수 없습니다. 이 시스템에서 스크립트를 실행할 수 없으..
개발 환경을 세팅하다 보면 커서(Cursor) 터미널에서 pnpm 명령어가 먹히지 않아 당황하는 경우가 많다. 이는 주로 윈도우 PowerShell의 보안 정책이나 환경 변수 인식 문제 때문이다. 이 포스팅은 이슈의 원인을 빠르게 진단하고, 본인의 작업 스타일에 맞는 터미널 환경(CMD, Git Bash 등)으로 전환하는 방법을 정리한다.1. 현상 진단: 왜 pnpm이 실행되지 않는가?가장 흔한 원인은 PowerShell 실행 정책이다. 윈도우는 시스템 보호를 위해 외부 스크립트 실행을 제한하는데, pnpm 명령어가 이 제한에 걸리는 것이다.원인 구분상세 내용해결 난이도보안 정책PowerShell의 Restricted 설정으로 인해 스크립트 차단낮음 (권한 변경)경로(Path) 누락시스템 환경 변수에 p..