kuaifan
|
2f8dee44c2
|
refactor(mail): 邮件发送弃用 guanguans/notify 改用 symfony/mailer
guanguans/notify 在本项目仅用于 SMTP 发信,但其 1.x 线已停更、email 渠道
自 3.x 起被上游移除(无升级路径)。改用项目已自带的 symfony/mailer(Laravel
13 传递依赖),零新增依赖,并一并移除孤儿依赖 overtrue/http、symfony/options-resolver。
- EmailNoticeTask / UserEmailVerification / SystemController 三处发信改为
new Mailer(Transport::fromDsn(...)) + new Email();API 1:1 等价
(from/to/subject/html 同名,verify_peer=0 仍受 symfony 8.x 支持,
notify 本就裸调 symfony 故异常透传不变、getCode()===550 仍成立)
- 移除 UserTransfer 未使用的 notify import
- 顺带修复既有 bug:超时判断字面量 "Timed Out" 与 symfony 实际消息
"timed out" 大小写不匹配,改 stripos 大小写不敏感
验证:phpstan 0 错误、composer audit 无公告;邮箱验证码、系统邮件测试两条
链路实测发信成功。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-15 06:10:47 +00:00 |
|
kuaifan
|
6bbcb702dc
|
fix(deps): 补回 symfony/yaml 显式依赖,修复升级后微应用接口 500
Laravel 8→13 升级后依赖树变化导致 symfony/yaml 不再被传递引入,
而 app/Module/Apps.php 直接 use Symfony\Component\Yaml\Yaml 解析微应用
config.yml。Apps::isInstalledThrow() 在所有微应用控制器构造函数中调用,
缺类导致审批中心等应用中心微应用接口及 AiTaskLoopTask 全部 500。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-13 02:49:16 +00:00 |
|
kuaifan
|
383664aef7
|
chore(quality): 引入 phpstan/ESLint/CI 门禁、Claude hooks 与代码检索地图
- phpstan(larastan ^3.10, level 1 + baseline 封存 86 个存量错误),composer stan / stan-baseline
- ESLint 9 flat config(vue2-essential,存量违规降 warn,error 基线为 0),npm run lint
- CI:.github/workflows/tests.yml(static-checks + phpunit,phpunit 用 kuaifan/php 镜像跑,FFI doo.so 不在仓库)
- Claude Code hooks:编辑 app/ 下 PHP 后自动单文件 phpstan,失败回灌
- 检索地图:routes/api-map.md(doc:api-map 生成,325 接口)、docs/events-map.md(events:map)、types/dootask-globals.d.ts($A 207 方法)、npm run check:lang(存量缺失 93 条,CI 暂非阻塞)
- CLAUDE.md:版本号更正 Laravel 13/PHP 8.4,新增质量门禁、检索地图、架构增量规则章节
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-06-13 01:21:22 +00:00 |
|
kuaifan
|
8fb6d331f8
|
chore(upgrade): 收尾——compose 镜像 tag、php-jwt 7、升级报告
- docker-compose.yml php 镜像指向 kuaifan/php:8.4-swoole-8.0.rc21
(dockerfile 仓库 phpswoole/8.4.Dockerfile 的 CI 变体产物,本地已构建同名 tag)
- firebase/php-jwt ^6.9 → ^7.1:消除 CVE-2025-45769(composer audit 清零);
唯一调用点 FileController JWT::encode(HS256) 实测兼容
(注意:7.x 强制 HMAC 密钥 ≥32 字节,标准 APP_KEY 51 字符无虞)
- 新增 UPGRADE-L13-REPORT.md:改动清单、依赖矩阵、验证证据、遗留风险
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-06-12 19:55:13 +00:00 |
|
kuaifan
|
645cb02757
|
chore(upgrade): Laravel 8 直升 13(旧结构跑通)+ PHP 8.4 + 依赖升级与兼容修复
- composer: framework ^13.0、php ^8.3、laravel-s ~3.8.0、predis ^2.3、
phpunit ^11.5、tinker ^3、excel ^3.1.69、captcha ^3.5、avatar ^6.5、
ldaprecord-laravel ^4、pinyin ^5.3、notify 锁 ~1.28.0;
移除 fideloper/proxy、fruitcake/laravel-cors、facade/ignition、
laravel/sail、madnest/madzipper、手动钉的 symfony/mailer;
symfony/console 锁 ^7.4(LaravelS Portal 与 console 8 的
configure(): void 类型断言不兼容)
- $dates 移除:AbstractModel 改 getCasts() 合并默认 datetime 列,
3 个子模型改 $casts
- Carbon 3:4 处 diffInSeconds 补 absolute 参数并取整
- LdapRecord v4:config use_ssl/use_tls→use_tls/use_starttls(env 变量名不变),
LdapUser::$objectClasses 补类型声明
- Madzipper→原生 ZipArchive(Base::zipAddFiles,4 处调用)
- pinyin v5 静态 API(Base::getFirstCharter/cn2pinyin)
- laravolt/avatar 6.5:PatchedAvatar 修上游纵向对齐 bug
(intervention 4.1.3 枚举无 middle),avatar 响应改 response()->file()
- TrustProxies 改框架内置基类,CORS 改 Illuminate\Http\Middleware\HandleCors
- Symfony Console 8 兼容:ManticoreSyncLock::handleSignal 新签名,
pcntl 回调解耦
- 非 Swoole 运行时守卫:AbstractTask::task / PushTask::push /
AbstractData(swoole table),artisan/测试上下文不再炸
Target class [swoole] does not exist
- Laravel 11+ change() 丢修饰符:2023_12_07 与 2025_08_10 迁移重申
nullable/default/comment(修复 fresh 安装)
- Setting/Ihttp 缺键访问加 ?? 守卫(PHP 8 警告在测试中转异常)
- phpunit.xml 迁移 11 schema;UserImportParseTest 改为自建部门数据
验证:8.4 容器内 migrate:fresh --seed 213 全过;php artisan test
145 passed/1 skipped;LaravelS(Swoole 6.2.1) /health 200、登录、
token 认证、WebSocket 握手、Task 投递、头像、图片裁剪冒烟全过
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-06-12 19:42:12 +00:00 |
|
kuaifan
|
bc264109f3
|
no message
|
2025-05-14 23:55:00 +08:00 |
|
kuaifan
|
63c6e12aca
|
no message
|
2025-04-19 16:57:56 +08:00 |
|
kuaifan
|
e9e9bab479
|
perf: 优化全文搜索
|
2025-04-18 01:45:03 +08:00 |
|
kuaifan
|
6afd413b87
|
no message
|
2025-03-19 23:35:02 +08:00 |
|
kuaifan
|
c2fd747c45
|
no message
|
2025-03-01 20:39:13 +08:00 |
|
kuaifan
|
e6167119e0
|
no message
|
2025-02-22 20:27:27 +08:00 |
|
kuaifan
|
49aa1434aa
|
perf: 优化超长文本信息
|
2024-12-13 15:49:31 +08:00 |
|
kuaifan
|
03cd6e79bb
|
no message
|
2024-12-06 22:45:54 +08:00 |
|
kuaifan
|
67baddf7a8
|
perf: 优化文字头像
|
2024-11-04 20:11:18 +08:00 |
|
kuaifan
|
312acdab51
|
perf: 优化预览消息
|
2024-11-01 21:18:04 +08:00 |
|
kuaifan
|
846fdcf145
|
perf: 优化打包下载
|
2024-01-03 20:48:49 +08:00 |
|
weifashi
|
e7fbe8bb49
|
feat: 升级 office 到 7.5 版本
|
2023-11-08 18:37:08 +08:00 |
|
kuaifan
|
29bbbd804a
|
perf: 优化图片压缩
|
2023-06-15 17:25:25 +08:00 |
|
weifs
|
fe46d63031
|
feat:初步融合工作流
|
2023-04-12 16:55:00 +08:00 |
|
kuaifan
|
2d4fa5735b
|
no message
|
2023-04-03 11:32:02 +08:00 |
|
kuaifan
|
7e98a78333
|
feat: 实现非对称加密关键接口
|
2023-03-30 15:44:51 +08:00 |
|
kuaifan
|
3a9001e091
|
Upgrade Professional Edition
|
2023-03-24 09:08:53 +08:00 |
|
kuaifan
|
9bc56f5d17
|
no message
|
2022-04-07 07:44:56 +08:00 |
|
kuaifan
|
d959815f5e
|
use php8.0
|
2021-07-27 22:33:15 +08:00 |
|
kuaifan
|
a3916c71e8
|
no message
|
2021-06-25 18:52:39 +08:00 |
|
kuaifan
|
8e770b02fe
|
初始化基础模型
|
2021-05-29 17:11:41 +08:00 |
|
kuaifan
|
e38f2ee2b6
|
项目初始化
|
2021-05-29 16:52:48 +08:00 |
|