skyltmax_config 3.0.0.beta.1 → 3.0.1

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: f551fa54ae3fc20ceb290e8336375723845f8243bf876d6f554e892a5ffc3d96
4
- data.tar.gz: a284c72546620297c153039a6e10e0e3a19413b78395ddacc05a2fc19bc87a16
3
+ metadata.gz: fecc91358d2e2bdf21d79d34000c58cdebab6b07c9b2a737f07d1652004fe014
4
+ data.tar.gz: 71c14c9300ba4fc1b42127edba48242f0ffa14902c3cda5e041779f5f8dab3b6
5
5
  SHA512:
6
- metadata.gz: 4c317fdf35669ae761443b9f6a308d9a7f711008f767327583f01274604d29d6ee03e14121c7841b8c79ab1dad5ea53d6825590634a3457cea0cd48bd1d99506
7
- data.tar.gz: 288ffb81e61a897ab46263c26f0cf2cf7242f66f7fbc3e7aded273f457d119967743b7ca9f36fd9d594990170fef8fe2123054be7cef4e606485053e28fc0c15
6
+ metadata.gz: 67f1f92d9bd8185e0e545af797d30f91e81248148111e471a20f02fca817f53aae3abeedbcf5a3038996eff1f8bd96941f181d3ce9a1a05f4985c559e3d59a2b
7
+ data.tar.gz: b60b9f0fd1b94efb35fb097e974450b171f842df99f009e85360d62ac5c63917abb4f072b6d403a0a3efffb56140a269bccef949cf99de1923d3fd043ef3aafa
@@ -14,10 +14,10 @@ sudo chown -R vscode:vscode /usr/local/bundle
14
14
  git config --global --add safe.directory $DEVC_WORKSPACE
15
15
 
16
16
  # node_modules outlives the image, so modules built against the previous major have to go.
17
- if [ "${PNPM_ALREADY_RESET_1}" != "true" ]; then
17
+ if [ "${PNPM_ALREADY_RESET_2}" != "true" ]; then
18
18
  rm -rf $DEVC_WORKSPACE/node_modules
19
19
 
20
- PNPM_ALREADY_RESET_1="true"
20
+ PNPM_ALREADY_RESET_2="true"
21
21
  fi
22
22
 
23
23
  # The bundle volume outlives the image, so gems built against the previous Ruby have to go.
@@ -28,20 +28,20 @@ if [ "${GEMS_ALREADY_RESET_1}" != "true" ]; then
28
28
  GEMS_ALREADY_RESET_1="true"
29
29
  fi
30
30
 
31
- if [ "${CHANGELOG_DISPLAYED_35}" != "true" ]; then
31
+ if [ "${CHANGELOG_DISPLAYED_38}" != "true" ]; then
32
32
  if [ -f "/var/lib/smdevc/changelog" ]; then
33
33
  printf "\n"
34
34
  toilet -f term -t -F border:metal "Latest Changes"
35
35
  cat /var/lib/smdevc/changelog
36
36
  fi
37
37
 
38
- CHANGELOG_DISPLAYED_35="true"
38
+ CHANGELOG_DISPLAYED_38="true"
39
39
  fi
40
40
 
41
41
  echo -e "\
42
42
  GEMS_ALREADY_RESET_1=${GEMS_ALREADY_RESET_1}\n\
43
- PNPM_ALREADY_RESET_1=${PNPM_ALREADY_RESET_1}\n\
44
- CHANGELOG_DISPLAYED_35=${CHANGELOG_DISPLAYED_35}" > "${MARKER_FILE}"
43
+ PNPM_ALREADY_RESET_2=${PNPM_ALREADY_RESET_2}\n\
44
+ CHANGELOG_DISPLAYED_38=${CHANGELOG_DISPLAYED_38}" > "${MARKER_FILE}"
45
45
 
46
46
  printf "\n\n\e[38;2;252;163;17m"
47
47
  toilet -f standard "Config"
@@ -1,6 +1,6 @@
1
1
  services:
2
2
  app:
3
- image: harbor.signmax.cloud/public/devcontainer:35@sha256:c2c72d7655656ce2f6eae44047526f0fb8774115aab4d2907f78e28000c69611
3
+ image: harbor.signmax.cloud/library/devcontainer:38@sha256:7ae041fb09862dd86ca24e284fb1fa1a1603c93fb976da27fafe478b75402e97
4
4
  volumes:
5
5
  - ..:/workspaces/config:cached
6
6
  shm_size: "1gb"
data/CHANGELOG.md CHANGED
@@ -2,7 +2,15 @@
2
2
 
3
3
  ### Unreleased
4
4
 
5
+ ### [3.0.1] - 2026-11-11
6
+
7
+ - chore: dependency updates
8
+
9
+ ### [3.0.0] - 2026-08-17
5
10
  - feat!: React 19
11
+ - feat!: Replace `eslint-plugin-react`with `@eslint-react/eslint-plugin`.
12
+ - chore: Vendor the `ignored` prettier parser as `prettier-ignored-plugin.js` and drop the `prettier-plugin-ignored`
13
+ dependency.
6
14
 
7
15
  ### [2.0.0] - 2026-08-12
8
16
 
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- skyltmax_config (3.0.0.beta.1)
4
+ skyltmax_config (3.0.1)
5
5
  rubocop (>= 1.84.2, < 2)
6
6
  rubocop-performance (>= 1.26.0, < 2)
7
7
  rubocop-rails (>= 2.33.0, < 3)
@@ -9,7 +9,7 @@ PATH
9
9
  GEM
10
10
  remote: https://rubygems.org/
11
11
  specs:
12
- activesupport (8.1.3.1)
12
+ activesupport (8.1.4.1)
13
13
  base64
14
14
  bigdecimal
15
15
  concurrent-ruby (~> 1.0, >= 1.3.1)
@@ -24,48 +24,49 @@ GEM
24
24
  uri (>= 0.13.1)
25
25
  ast (2.4.3)
26
26
  base64 (0.3.0)
27
- bigdecimal (4.1.2)
27
+ bigdecimal (4.1.3)
28
28
  concurrent-ruby (1.3.8)
29
29
  connection_pool (3.0.2)
30
30
  drb (2.2.3)
31
31
  i18n (1.15.2)
32
32
  concurrent-ruby (~> 1.0)
33
- json (2.21.2)
33
+ json (3.1.0)
34
34
  language_server-protocol (3.17.0.6)
35
35
  lint_roller (1.1.0)
36
36
  logger (1.7.0)
37
- minitest (6.0.6)
37
+ minitest (6.1.0)
38
38
  drb (~> 2.0)
39
- prism (~> 1.5)
40
- parallel (2.1.0)
41
- parser (3.3.12.0)
39
+ prism (>= 1.5, < 3)
40
+ parallel (2.3.0)
41
+ parser (3.3.13.0)
42
42
  ast (~> 2.4.1)
43
43
  racc
44
- prism (1.9.0)
44
+ prism (2.1.0)
45
+ prism (2.1.0-x86_64-linux-gnu)
45
46
  racc (1.8.1)
46
- rack (3.2.7)
47
+ rack (3.2.8)
47
48
  rainbow (3.1.1)
48
49
  rake (13.4.2)
49
- regexp_parser (2.12.0)
50
- rubocop (1.89.0)
51
- json (~> 2.3)
50
+ regexp_parser (2.13.1)
51
+ rubocop (1.92.2)
52
+ json (>= 2.3)
52
53
  language_server-protocol (~> 3.17.0.2)
53
54
  lint_roller (~> 1.1.0)
54
55
  parallel (>= 1.10)
55
56
  parser (>= 3.3.0.2)
56
57
  rainbow (>= 2.2.2, < 4.0)
57
- regexp_parser (>= 2.9.3, < 3.0)
58
+ regexp_parser (>= 2.11.3, < 3.0)
58
59
  rubocop-ast (>= 1.49.0, < 2.0)
59
60
  ruby-progressbar (~> 1.7)
60
61
  unicode-display_width (>= 2.4.0, < 4.0)
61
- rubocop-ast (1.50.0)
62
+ rubocop-ast (1.51.0)
62
63
  parser (>= 3.3.7.2)
63
- prism (~> 1.7)
64
+ prism (>= 1.7)
64
65
  rubocop-performance (1.27.0)
65
66
  lint_roller (~> 1.1)
66
67
  rubocop (>= 1.89.0, < 2.0)
67
68
  rubocop-ast (>= 1.47.1, < 2.0)
68
- rubocop-rails (2.37.0)
69
+ rubocop-rails (2.38.0)
69
70
  activesupport (>= 4.2.0)
70
71
  lint_roller (~> 1.1)
71
72
  rack (>= 1.1)
@@ -75,10 +76,10 @@ GEM
75
76
  securerandom (0.4.1)
76
77
  tzinfo (2.0.6)
77
78
  concurrent-ruby (~> 1.0)
78
- unicode-display_width (3.2.0)
79
- unicode-emoji (~> 4.1)
80
- unicode-emoji (4.2.0)
81
- uri (1.1.1)
79
+ unicode-display_width (3.3.0)
80
+ unicode-emoji (~> 4.3)
81
+ unicode-emoji (4.3.0)
82
+ uri (1.1.2)
82
83
 
83
84
  PLATFORMS
84
85
  ruby
@@ -91,4 +92,4 @@ DEPENDENCIES
91
92
  skyltmax_config!
92
93
 
93
94
  BUNDLED WITH
94
- 4.0.17
95
+ 4.0.21
data/eslint.js CHANGED
@@ -1,6 +1,3 @@
1
- import { createRequire } from "node:module"
2
- import path from "node:path"
3
-
4
1
  import globals from "globals"
5
2
 
6
3
  const ERROR = "error"
@@ -11,19 +8,6 @@ const vitestFiles = ["**/__tests__/**/*", "**/*.test.*", "**/*.spec.*"]
11
8
  const testFiles = ["**/tests/**", "**/#tests/**", ...vitestFiles]
12
9
  const playwrightFiles = ["**/e2e/**"]
13
10
 
14
- // eslint-plugin-react's own `version: "detect"` crashes on eslint 10: detection calls the context.getFilename() that
15
- // eslint 10 removed (jsx-eslint/eslint-plugin-react#4018, fix unreleased as of 7.37.5). Resolve the version here and
16
- // pass it explicitly instead. Anchored on the linted project's cwd, not this package, so a consumer's own React is
17
- // what gets detected; falls back to the newest line when React isn't installed at all.
18
- const reactVersion = (() => {
19
- try {
20
- const requireFromProject = createRequire(path.join(process.cwd(), "package.json"))
21
- return requireFromProject("react/package.json").version
22
- } catch {
23
- return "19.0"
24
- }
25
- })()
26
-
27
11
  /** @type {import("eslint").Linter.Config[]} */
28
12
  export const config = [
29
13
  {
@@ -71,46 +55,39 @@ export const config = [
71
55
  // JSX/TSX files
72
56
  {
73
57
  files: ["**/*.tsx", "**/*.jsx"],
74
- plugins: {
75
- react: (await import("eslint-plugin-react")).default,
76
- },
77
58
  languageOptions: {
78
59
  parser: (await import("typescript-eslint")).parser,
79
60
  parserOptions: {
80
61
  jsx: true,
81
62
  },
82
63
  },
83
- settings: {
84
- react: {
85
- version: reactVersion,
86
- },
87
- formComponents: ["Form"],
88
- linkComponents: [
89
- {
90
- name: "Link",
91
- linkAttribute: "to",
92
- },
93
- {
94
- name: "NavLink",
95
- linkAttribute: "to",
96
- },
97
- ],
98
- },
64
+ },
65
+
66
+ {
67
+ files: ["**/*.ts?(x)"],
68
+ ...(await import("@eslint-react/eslint-plugin")).default.configs["recommended-type-checked"],
69
+ },
70
+ {
71
+ files: ["**/*.jsx"],
72
+ ...(await import("@eslint-react/eslint-plugin")).default.configs.recommended,
73
+ },
74
+ {
75
+ files: ["**/*.ts?(x)", "**/*.jsx"],
99
76
  rules: {
100
- ...(await import("eslint-plugin-react")).default.configs.flat.recommended.rules,
101
- ...(await import("eslint-plugin-react")).default.configs.flat["jsx-runtime"].rules,
102
- "react/jsx-key": WARN,
103
- "react/prop-types": OFF,
104
- "react/button-has-type": ERROR,
105
- "react/jsx-boolean-value": WARN,
106
- "react-hooks/exhaustive-deps": ERROR,
107
-
108
- "react/jsx-no-leaked-render": [
109
- WARN,
110
- {
111
- validStrategies: ["ternary"],
112
- },
113
- ],
77
+ // eslint-plugin-react-hooks — React's own plugin, still actively released — stays the authority on these two.
78
+ // @eslint-react ships its own copies in `recommended`, and both enabled means the same line reported twice.
79
+ "@eslint-react/rules-of-hooks": OFF,
80
+ "@eslint-react/exhaustive-deps": OFF,
81
+
82
+ // Severities carried over from the eslint-plugin-react config these replace, where both were warnings.
83
+ "@eslint-react/no-missing-key": WARN, // was react/jsx-key
84
+ "@eslint-react/no-leaked-conditional-rendering": WARN, // was react/jsx-no-leaked-render
85
+
86
+ // Rules we relied on that @eslint-react keeps out of `recommended`. The old names are recorded because
87
+ // consumers have to rename them in their own `eslint-disable` comments.
88
+ "@eslint-react/dom-no-missing-button-type": ERROR, // was react/button-has-type
89
+ "@eslint-react/dom-no-unknown-property": ERROR, // was react/no-unknown-property
90
+ "@eslint-react/dom-no-unsafe-target-blank": ERROR, // was react/jsx-no-target-blank
114
91
  },
115
92
  },
116
93
 
data/fixture/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "engines": {
8
8
  "node": ">=24.0.0"
9
9
  },
10
- "packageManager": "pnpm@11.22.0",
10
+ "packageManager": "pnpm@12.18.0",
11
11
  "scripts": {
12
12
  "format": "prettier . --check",
13
13
  "lint": "eslint src --max-warnings=0",
@@ -15,8 +15,8 @@
15
15
  },
16
16
  "devDependencies": {
17
17
  "@signmax/config": "file:..",
18
- "eslint": "10.8.1",
19
- "prettier": "3.9.6",
18
+ "eslint": "10.14.0",
19
+ "prettier": "3.9.10",
20
20
  "typescript": "6.0.3"
21
21
  },
22
22
  "prettier": "@signmax/config/prettier"