From a325b8b77c3b9383db03598914ed34d3b88bac43 Mon Sep 17 00:00:00 2001 From: pja9362 Date: Wed, 14 Jan 2026 11:38:40 +0900 Subject: [PATCH] Revert "Merge pull request #142 from NaverPayDev/feature/141" This reverts commit d8f13151651d37624daa872713028143593f6d4e, reversing changes made to 926454a6199f867697fe63eb4836e6372fe9f8c2. --- .changeset/brave-tigers-fly.md | 18 -------------- .changeset/gentle-clouds-march.md | 18 -------------- packages/editorconfig/README.md | 15 ++++++------ packages/editorconfig/createConfigFile.js | 29 +++++++++++++++++++++++ packages/editorconfig/index.js | 3 +++ packages/editorconfig/package.json | 5 +++- packages/markdown-lint/README.md | 18 +++++--------- packages/markdown-lint/package.json | 2 ++ 8 files changed, 51 insertions(+), 57 deletions(-) delete mode 100644 .changeset/brave-tigers-fly.md delete mode 100644 .changeset/gentle-clouds-march.md create mode 100644 packages/editorconfig/createConfigFile.js create mode 100644 packages/editorconfig/index.js diff --git a/.changeset/brave-tigers-fly.md b/.changeset/brave-tigers-fly.md deleted file mode 100644 index 145dde0..0000000 --- a/.changeset/brave-tigers-fly.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -"@naverpay/markdown-lint": major ---- - -### Breaking Changes - -- `postinstall` 스크립트 제거로 패키지 설치 시 자동 설정 파일 생성 기능이 제거됨 - - 기존: `npm install` 시 `.markdownlint.json` 파일이 프로젝트 루트에 자동 생성 - - 변경: 수동으로 설정 파일 생성 필요 또는 `@naverpay/code-style-cli` 사용 권장 - -### 코드 정리 - -- `package.json`에서 `postinstall` 스크립트 제거 -- npm 배포 대상(`files`)에서 `postInstall` 디렉토리 제외 - -### 문서 업데이트 - -- README에 새로운 설치 가이드 추가 (`@naverpay/code-style-cli` 사용 또는 수동 설정 방법 안내) diff --git a/.changeset/gentle-clouds-march.md b/.changeset/gentle-clouds-march.md deleted file mode 100644 index 4804835..0000000 --- a/.changeset/gentle-clouds-march.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -"@naverpay/editorconfig": major ---- - -### Breaking Changes - -- `postinstall` 스크립트 제거로 패키지 설치 시 자동 설정 파일 생성 기능이 제거됨 - - 기존: `npm install` 시 `.editorconfig` 파일이 프로젝트 루트에 자동 생성 - - 변경: 수동으로 설정 파일 복사 필요 또는 `@naverpay/code-style-cli` 사용 권장 - -### 코드 정리 - -- `createConfigFile.js`, `index.js` 파일 삭제 -- `package.json`에서 `postinstall` 스크립트 제거 - -### 문서 업데이트 - -- README에 새로운 설치 가이드 추가 (`@naverpay/code-style-cli` 사용 또는 수동 복사 방법 안내) diff --git a/packages/editorconfig/README.md b/packages/editorconfig/README.md index 856194d..66038a0 100644 --- a/packages/editorconfig/README.md +++ b/packages/editorconfig/README.md @@ -4,15 +4,14 @@ ## 설치 방법 -[`@naverpay/code-style-cli`](../code-style-cli/README.md)를 사용하여 설치하는 것을 권장합니다. - ```bash -npx @naverpay/code-style-cli +npm install @naverpay/editorconfig -D ``` -또는 직접 설치 후 설정 파일을 복사할 수 있습니다. +## 주의 사항 -```bash -npm install @naverpay/editorconfig -D -cp node_modules/@naverpay/editorconfig/.editorconfig .editorconfig -``` +- pnpm 으로 설치 후 `.editorconfig` 파일이 생성되지 않았다면, `node_modules` 를 삭제 후 [side-effects-cache](https://pnpm.io/npmrc#side-effects-cache) 설정을 false로 하고 다시 설치해주세요. + + ```bash + pnpm install @naverpay/editorconfig -D --side-effects-cache false + ``` diff --git a/packages/editorconfig/createConfigFile.js b/packages/editorconfig/createConfigFile.js new file mode 100644 index 0000000..d0c6527 --- /dev/null +++ b/packages/editorconfig/createConfigFile.js @@ -0,0 +1,29 @@ +#!/usr/bin/env node +/* eslint-disable no-console */ +const {execSync} = require('child_process') +const fs = require('fs') +const path = require('path') + +const createConfigFile = (dirname, fileName, destFileName = fileName) => { + try { + const source = path.join(dirname, fileName) + const config = fs.readFileSync(source) + + const gitRoot = execSync('git rev-parse --show-toplevel').toString().trim() + const dest = path.join(gitRoot, destFileName) + + if (fs.existsSync(dest)) { + process.exit(0) + } + fs.writeFileSync(dest, config) + console.log(`${destFileName} is created successfully`) + } catch (error) { + console.log(`Failed to create ${destFileName}`) + console.log(error?.message) + process.exit(0) + } +} + +module.exports = { + createConfigFile, +} diff --git a/packages/editorconfig/index.js b/packages/editorconfig/index.js new file mode 100644 index 0000000..747492b --- /dev/null +++ b/packages/editorconfig/index.js @@ -0,0 +1,3 @@ +const {createConfigFile} = require('./createConfigFile') + +createConfigFile(__dirname, '.editorconfig') diff --git a/packages/editorconfig/package.json b/packages/editorconfig/package.json index 05d049f..a662e7b 100644 --- a/packages/editorconfig/package.json +++ b/packages/editorconfig/package.json @@ -13,5 +13,8 @@ }, "license": "MIT", "author": "@NaverPayDev/frontend", - "type": "commonjs" + "type": "commonjs", + "scripts": { + "postinstall": "node index.js" + } } diff --git a/packages/markdown-lint/README.md b/packages/markdown-lint/README.md index c741440..dc297d9 100644 --- a/packages/markdown-lint/README.md +++ b/packages/markdown-lint/README.md @@ -3,24 +3,18 @@ markdown 파일 검사용 lint 도구입니다. [DavidAnson/markdownlint](https://github.com/DavidAnson/markdownlint)에서 제공하는 패키지와 규칙을 사용하고 있으며, 몇 가지 rule은 커스텀 되어 있습니다. -## 설치 방법 +## Installation -[`@naverpay/code-style-cli`](../code-style-cli/README.md)를 사용하여 설치하는 것을 권장합니다. - -```bash -npx @naverpay/code-style-cli ``` - -또는 직접 설치 후 설정 파일을 생성할 수 있습니다. - -```bash -npm install @naverpay/markdown-lint -D -echo '{"extends": "@naverpay/markdown-lint"}' > .markdownlint.jsonc +npm i @naverpay/markdown-lint -D ``` ## Config -> [markdown-lint config](./.markdownlint.jsonc)는 [jsonc](https://code.visualstudio.com/docs/languages/json#_json-with-comments) 형식으로 작성되어 있어, 주석을 통해 rule에 대한 설명을 확인할 수 있습니다. +`@naverpay/markdown-lint`를 설치하면 `postinstall`을 통해 자동으로 `.markdownlint.json`이 생성됩니다. +이미 `.markdownlint.json`이 존재한다면 생성되지 않습니다. + +> [markdown-lint config](./.markdownlint.jsonc)는 [jsonc](https://code.visualstudio.com/docs/languages/json#_json-with-comments) 형식으로 작성되어 있어, 주석을 통해 rule에 대한 설명을 확인할 수 있습니다. > 각 규칙의 명세는 [여기](https://github.com/markdownlint/markdownlint/blob/main/docs/RULES.md)서 확인할 수 있습니다. ## Integrating with IDE diff --git a/packages/markdown-lint/package.json b/packages/markdown-lint/package.json index 47103da..bc727e1 100644 --- a/packages/markdown-lint/package.json +++ b/packages/markdown-lint/package.json @@ -21,9 +21,11 @@ }, "files": [ "cli.js", + "postInstall", ".markdownlint.jsonc" ], "scripts": { + "postinstall": "node postInstall/index.js", "test": "jest --config jest.config.js" }, "dependencies": {