Releases: mix-php/mix
Releases · mix-php/mix
v2.1.0-RC2
- 增加 mix/redis-subscribe 库,ws模块订阅修改为使用该库,可用更精简的代码在协程中安全使用订阅。
- http/ws/tcp/udp 都增加 -r/--reuse-port 参数,可多开端口复用,解决多 CPU 利用的问题。
- 移除 mix/udp-server 库,移动到骨架中。
- 优化所有 server 的连接错误为抛出异常。
- mix/redis、mix/database 库关闭连接修改为 close。
- mix/database 库扩展 queryOne/queryAll 可指定返回类型。
v2.1.0-RC: Merge remote-tracking branch 'remotes/origin/v2.1'
本次 v2.1 重构版本主要修改了框架核心封装部分,而功能库如:Database/Redis/Auth 等库使用方式只是微调,大致重构内容如下:
- mix-php/mix 库修改为子模块的方式包含框架所有库,require mix/mix 时该库会替换 composer 上的同名库,用户提交 PR 时只需修改该库提交,贡献将出现在 mix-php/mix。
- 从之前的多进程模型全部修改为基于 Swoole\Coroutine\Server 开发的单进程模型,完全协程化。
- 移除了之前的协程组件自动隔离容器、 App 容器的封装概念,修改为类 Golang 风格的直接使用协程 Server 的开发方式,将之前的库封装代码移动到骨架代码中,让用户能更加细粒度的修改每一处细节。
- 所有 composer 依赖库从 25 个缩减到 20 个,全部独立化,无强依赖,支持 8 种 PSR 规范。
- 强化了 Bean 依赖注入功能,移除了之前的全局组件的概念,用 Bean 的 SINGLETON 取代。
- 增加 mix/event 库引入事件机制。
v2.1.0-beta
- 发布
v2.1.0-beta
v2.0.7
v2.0.6
- app 配置信息合并到 server 配置文件 [link] ,保留兼容性 (http-daemon, tcp-daemon, udp-daemon, websocket-daemon, http-server, tcp-server, udp-server, websocket-server, server, mix)
- json/xml 错误响应修改为不通过 view 渲染,html 错误响应视图文件路径修改,注意:此处不兼容,请根据 [link] 对比修改 (http, mix)
- 增加 push 前判断是否为 ws 连接 (websocket)
- 优化 Arguments 类,Flag 类增加 values 方法 (console)
- 命令字符支持大写与
_-:
字符 (console) - kill 进程使用 PHP 原生,减少在某些非必要场景对 Swoole 的依赖 (framework)
- 组件增加 ::make($obj) 方法,补充代码补全功能 (framework)
- 增加 app()->get($name) 方法获取组件,以解决 __get 协程兼容问题 (framework)
- self 修改为 static,便于继承重写 (tcp, udp, websocket, http, console, framework)
- 修复 scan sScan zScan hScan 函数,做引用类型处理 (redis)
- 新增查询监听器 (mix, redis, database)
- PDOConnection 增加 prepare 方法替代 createCommand 方法,保留兼容性 (database)
- PDOConnection 增加 getLastSql 方法替代 getRawSql 方法,保留兼容性 (database)
- PDOConnection 增加 getQueryLog 方法 (database)
- PDOConnection 的 update/delete 的 where 方法增加一维条件支持 (database)
- QueryBuilder 增加 Between/NotBetween 参数可为数组支持,保留兼容性 (database)
- QueryBuilder 的 where 方法增加多维数组条件支持 (database)
- QueryBuilder 增加 prepare 方法 (database)
v2.0.5
- 优化对空字符串字段的 required 处理 (validate)
- 修改 TcpHandler 从 Server 中获取 eof 配置 (mix)
- 修改 Http 模块默认为协程模式 (mix)
- 完善 Channel 代码补全 (framework)
- 移除 service 前缀, 缩短服务管理命令 (http-daemon, tcp-daemon, udp-daemon, websocket-daemon)
- 新增服务基础库 (server)
- 全部服务修改为依赖 server 库 (http-server, tcp-server, udp-server, websocket-server)
- 服务类的 setting 与默认配置合并,开放 server 属性 (http-server, tcp-server, udp-server, websocket-server)
v2.0.4
- 增加 hook_shutdown,hook_worker_error,hook_worker_exit 三个配置 (websocket-server, udp-server, tcp-server, http-server)
- 修改统计类回调为 success/error 后缀 (websocket-server, udp-server, tcp-server, http-server)
- 增加 hook_request 配置,可接收 http 请求 (websocket-server)
- 修改 request->path() 方法为 / 开头 (http-message)
- 完善类型注释 (websocket)
- 移除多余命名空间 (mix)
v2.0.3
- 移除 daemon 模块,DEMO 合并到 console 模块中 (mix)
- 修复视图 php7.3 兼容 (mix)
- 修改 http 模块默认为常驻同步模式 (mix)
- 优化 WebSocket DEMO (mix)
- ::$coroutineMode修改为::COROUTINE_MODE (framework, http, log, tcp, tcp-session, udp, websocket, pool) 这些包必须一同升级
- 增加全局 server() 方法 (framework)
- Server 增加事件 hook 配置,可在事件中调用任意代码 (http-server, tcp-server, udp-server, websocket-server)
- 日志增加 pid 信息 (log)
- 移除 websocket-daemon 的 -u 参数,因为同步也无法支持 (websocket-daemon)
- 更新依赖 (all)