@yaoyuanchao/dingtalk 1.4.8 → 1.4.10

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.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,23 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.4.10] - 2026-01-30
9
+
10
+ ### Fixed
11
+
12
+ - **Remove peerDependencies** — removed `clawdbot` from peerDependencies to prevent npm 7+ from installing the entire clawdbot package (400+ deps, ~55MB) into plugin's node_modules; clawdbot is injected at runtime via jiti alias
13
+ - **`clawdbot plugins update` now works** — installation reduced from timeout (~5min+) to seconds
14
+
15
+ ## [1.4.9] - 2026-01-30
16
+
17
+ ### Fixed
18
+
19
+ - **zod v4 compatibility** — upgraded zod dependency from `^3.22.0` to `^4.3.6` to match clawdbot's version; fixed `ZodError.errors` → `ZodError.issues` API change
20
+
21
+ ### Changed
22
+
23
+ - **Dependency alignment** — now uses same zod version as clawdbot core and clawdbot-feishu plugin
24
+
8
25
  ## [1.3.6] - 2026-01-28
9
26
 
10
27
  ### Fixed
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yaoyuanchao/dingtalk",
3
- "version": "1.4.8",
3
+ "version": "1.4.10",
4
4
  "type": "module",
5
5
  "description": "DingTalk channel plugin for Clawdbot with Stream Mode support",
6
6
  "license": "MIT",
@@ -39,10 +39,7 @@
39
39
  },
40
40
  "dependencies": {
41
41
  "dingtalk-stream": "^2.1.4",
42
- "zod": "^3.22.0"
43
- },
44
- "peerDependencies": {
45
- "clawdbot": ">=2026.1.24"
42
+ "zod": "^4.3.6"
46
43
  },
47
44
  "files": [
48
45
  "index.ts",
@@ -87,11 +87,11 @@ export function validateDingTalkConfig(config: unknown): DingTalkConfig {
87
87
  return dingTalkConfigSchema.parse(config);
88
88
  } catch (error) {
89
89
  if (error instanceof z.ZodError) {
90
- const issues = error.errors.map(e => {
90
+ const formatted = error.issues.map(e => {
91
91
  const path = e.path.join('.');
92
92
  return ` - ${path || 'root'}: ${e.message}`;
93
93
  }).join('\n');
94
- throw new Error(`DingTalk config validation failed:\n${issues}`);
94
+ throw new Error(`DingTalk config validation failed:\n${formatted}`);
95
95
  }
96
96
  throw error;
97
97
  }
@@ -110,11 +110,11 @@ export function safeValidateDingTalkConfig(config: unknown):
110
110
  return { success: true, data };
111
111
  } catch (error) {
112
112
  if (error instanceof z.ZodError) {
113
- const issues = error.errors.map(e => {
113
+ const formatted = error.issues.map(e => {
114
114
  const path = e.path.join('.');
115
115
  return `${path || 'root'}: ${e.message}`;
116
116
  }).join('; ');
117
- return { success: false, error: issues };
117
+ return { success: false, error: formatted };
118
118
  }
119
119
  return { success: false, error: String(error) };
120
120
  }