skyltmax_config 0.0.7 → 0.0.8

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c0635b272bd30a126daa5ea09e2aa10ce63567c109c0b606e0018083620ef898
4
- data.tar.gz: b21dddaf0d2b757c3c87a7239d89f82772a86420ed36c57e087be2b30fb7b586
3
+ metadata.gz: 8d0b5e4005f25b7a15134752efae54631a8b91a41f35ebfa13d55f6696322b0b
4
+ data.tar.gz: '0393d88c7e9a2ed3220041a0e3b3c92624851713ee50e70367dbddae84198a1c'
5
5
  SHA512:
6
- metadata.gz: 2b96358afb801106c087d22fcaa0d5206896e77aa43b74f202ff1a987231f018d338d3af4e0a53458e2d416c95a2db7e20254a11194919e3d9de7910748a595d
7
- data.tar.gz: 324d6f181de3e97a1c09a201f1f1cd722332cbbda3a1f08dd65cdde5b265b6b925864eb4234ae75d21c89f52ffee6be9f25a884e22feebcb0a7020ec0f1730ff
6
+ metadata.gz: f13d84be69e038732078a9aa5fd8b0f8f0e87f0a1d59b3af42a3593a06b8cc2d2b2ab18257da6db31144b65aff80e3e044820024c842d7f4df7c2300c571086c
7
+ data.tar.gz: dffca3d7f02fc0a60cb3619612376e1aac7e71318f510fc81a27c525f9aadceca14efd03273106c8d268f7d3b03d29f2af8efd756d854ab0319cb4dc0840a703
data/AGENTS.md CHANGED
@@ -501,9 +501,30 @@ This package uses a dual-publishing approach:
501
501
 
502
502
  ### Dependency Management
503
503
 
504
- This package bundles all required tooling as direct dependencies, making it the **single source of truth** for versions:
504
+ This package uses **peer dependencies** to provide all required tooling while ensuring proper editor/IDE discovery:
505
505
 
506
- **Dependencies (all tooling bundled):**
506
+ **Why Peer Dependencies?**
507
+
508
+ 1. **Editor Discovery:** Tools like VSCode, WebStorm, and others look for `prettier`, `eslint`, and `typescript` in the
509
+ project's root `node_modules`. When bundled as regular dependencies, they end up in
510
+ `node_modules/@signmax/config/node_modules`, which editors cannot find.
511
+
512
+ 2. **Automatic Installation:** Modern package managers with `autoInstallPeers` enabled (pnpm's default, npm 7+
513
+ configurable) automatically install peer dependencies, so users get a "single install" experience.
514
+
515
+ 3. **Hoisting:** Peer dependencies are hoisted to the root `node_modules`, making them discoverable by all tools and
516
+ editors.
517
+
518
+ 4. **Version Control:** This package controls the **exact** versions (no semver ranges) to ensure all consuming projects
519
+ get identical tool versions for reproducible linting/formatting/type-checking.
520
+
521
+ **Structure:**
522
+
523
+ - **peerDependencies:** All ESLint, Prettier, TypeScript tools and plugins with **exact versions** (no semver ranges)
524
+ - **devDependencies:** Only dev-specific tools (`@types/react`, `npm-run-all`, `react`) - peer dependencies are
525
+ auto-installed by pnpm for local development
526
+
527
+ **All tooling (declared as peer dependencies with exact versions):**
507
528
 
508
529
  - **ESLint & Core:** `eslint`, `@eslint/js`, `typescript-eslint`
509
530
  - **TypeScript ESLint:** `@typescript-eslint/eslint-plugin`, `@typescript-eslint/parser`, `@typescript-eslint/utils`
@@ -513,12 +534,18 @@ This package bundles all required tooling as direct dependencies, making it the
513
534
  - **Testing:** `@vitest/eslint-plugin`, `eslint-plugin-testing-library`, `eslint-plugin-jest-dom`
514
535
  - **Utilities:** `globals`
515
536
 
516
- **Why this approach?**
537
+ **Benefits:**
538
+
539
+ **Benefits:**
517
540
 
518
541
  - ✅ **Version control:** Consuming projects get consistent, tested versions
519
- - ✅ **Simplified setup:** Single `npm install @signmax/config` gets everything
542
+ - ✅ **Simplified setup:** Single `npm install @signmax/config` gets everything (with autoInstallPeers enabled)
520
543
  - ✅ **No version conflicts:** This package manages compatibility between tools
521
544
  - ✅ **Updates centralized:** Bump versions here, all projects benefit
545
+ - ✅ **Editor compatibility:** Tools are hoisted to root `node_modules/` for VSCode, WebStorm, etc.
546
+
547
+ **Note:** pnpm enables `autoInstallPeers` by default. For npm 7+, you may need to enable it with
548
+ `npm config set auto-install-peers true` or install peers manually if warnings appear.
522
549
 
523
550
  **DevDependencies (development only):**
524
551
 
data/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  ### Unreleased
4
4
 
5
+ ### [0.0.8] - 2025-11-05
6
+
7
+ - fix: Move dependencies to peer dependencies.
8
+
5
9
  ### [0.0.7] - 2025-11-05
6
10
 
7
11
  - feat: Make prettier tailwind plugin optional.
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- skyltmax_config (0.0.7)
4
+ skyltmax_config (0.0.8)
5
5
  rubocop (>= 1.81.0, < 2)
6
6
  rubocop-performance (>= 1.26.0, < 2)
7
7
  rubocop-rails (>= 2.33.0, < 3)
data/README.md CHANGED
@@ -16,9 +16,6 @@ npm install --save-dev @signmax/config
16
16
  pnpm add -D @signmax/config
17
17
  ```
18
18
 
19
- All required tools (ESLint, Prettier, TypeScript, and all plugins) are bundled as dependencies. This package is the
20
- single source of truth for all tooling versions—no need to install peer dependencies separately.
21
-
22
19
  ### Ruby
23
20
 
24
21
  Include the gem in your `Gemfile`:
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SkyltmaxConfig
4
- VERSION = "0.0.7"
4
+ VERSION = "0.0.8"
5
5
  end
data/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@signmax/config",
3
- "version": "0.0.7",
3
+ "version": "0.0.8",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -42,36 +42,37 @@
42
42
  "LICENSE"
43
43
  ],
44
44
  "engines": {
45
- "node": ">=18.0.0"
45
+ "node": ">=20.0.0"
46
46
  },
47
47
  "scripts": {
48
48
  "format": "prettier . --write",
49
49
  "lint": "eslint .",
50
50
  "typecheck": "tsc",
51
- "validate": "run-p -l format lint typecheck"
51
+ "validate": "run-p -l format lint typecheck",
52
+ "bump": "npx npm-check-updates --dep peer --target latest -i"
52
53
  },
53
- "dependencies": {
54
- "@eslint/js": "^9.33.0",
55
- "@total-typescript/ts-reset": "^0.6.1",
56
- "@typescript-eslint/eslint-plugin": "^8.39.1",
57
- "@typescript-eslint/parser": "^8.39.1",
58
- "@typescript-eslint/utils": "^8.39.1",
59
- "@vitest/eslint-plugin": "^1.3.4",
60
- "eslint": "^9.33.0",
61
- "eslint-config-prettier": "^10.1.8",
62
- "eslint-plugin-import-x": "^4.16.1",
63
- "eslint-plugin-jest-dom": "^5.5.0",
64
- "eslint-plugin-jsx-a11y": "^6.10.2",
65
- "eslint-plugin-prettier": "^5.5.4",
66
- "eslint-plugin-react": "^7.37.5",
67
- "eslint-plugin-react-hooks": "^5.2.0",
68
- "eslint-plugin-testing-library": "^7.6.6",
69
- "globals": "^16.3.0",
70
- "prettier": "^3.6.2",
71
- "prettier-plugin-tailwindcss": "^0.7.1",
72
- "tslib": "^2.8.1",
73
- "typescript": "^5.9.2",
74
- "typescript-eslint": "^8.39.1"
54
+ "peerDependencies": {
55
+ "@eslint/js": "9.39.1",
56
+ "@total-typescript/ts-reset": "0.6.1",
57
+ "@typescript-eslint/eslint-plugin": "8.46.3",
58
+ "@typescript-eslint/parser": "8.46.3",
59
+ "@typescript-eslint/utils": "8.46.3",
60
+ "@vitest/eslint-plugin": "1.4.1",
61
+ "eslint": "9.39.1",
62
+ "eslint-config-prettier": "10.1.8",
63
+ "eslint-plugin-import-x": "4.16.1",
64
+ "eslint-plugin-jest-dom": "5.5.0",
65
+ "eslint-plugin-jsx-a11y": "6.10.2",
66
+ "eslint-plugin-prettier": "5.5.4",
67
+ "eslint-plugin-react": "7.37.5",
68
+ "eslint-plugin-react-hooks": "7.0.1",
69
+ "eslint-plugin-testing-library": "7.13.3",
70
+ "globals": "16.5.0",
71
+ "prettier": "3.6.2",
72
+ "prettier-plugin-tailwindcss": "0.7.1",
73
+ "tslib": "2.8.1",
74
+ "typescript": "5.9.3",
75
+ "typescript-eslint": "8.46.3"
75
76
  },
76
77
  "devDependencies": {
77
78
  "@types/react": "^18.3.0",