imi

imi 是一款支持长连接微服务分布式的 PHP 开发框架,它可以运行在 PHP-FPM、Swoole、Workerman、RoadRunner 等多种容器环境下。它支持 HttpApi、WebSocket、TCP、UDP、MQTT 服务的开发。特别适合互联网微服务、即时通讯聊天im、物联网等场景!QQ群:17916227

OTHER License

Downloads
54.5K
Stars
1.2K
Committers
38

Bot releases are visible (Hide)

imi - v2.1.63 Latest Release

Published by Yurunsoft 4 months ago

What's Changed

Full Changelog: https://github.com/imiphp/imi/compare/v2.1.62...v2.1.63

imi - v2.1.62

Published by Yurunsoft 7 months ago

What's Changed

Full Changelog: https://github.com/imiphp/imi/compare/v2.1.61...v2.1.62

imi - v2.1.61

Published by Yurunsoft 8 months ago

What's Changed

Full Changelog: https://github.com/imiphp/imi/compare/v2.1.60...v2.1.61

imi - v2.1.60

Published by Yurunsoft 9 months ago

What's Changed

Full Changelog: https://github.com/imiphp/imi/compare/v2.1.59...v2.1.60

imi - v2.1.59

Published by Yurunsoft 10 months ago

What's Changed

Full Changelog: https://github.com/imiphp/imi/compare/v2.1.58...v2.1.59

imi - v2.1.58

Published by Yurunsoft 11 months ago

增强

  • PHP 原生枚举深度支持 (#646)

修复

  • 修复 InjectArg AOP 优先级错误 (#604)

  • 修复 PostgreSQL jsonb 类型在模型类中的使用 (#610)

  • 修复 PostgreSQL replace() 没有更新字段值 (#634)

  • 修复临时设置服务器到请求上下文后的恢复 (#637)

  • 修复 ConnectionContextStore 初始化 (#642)

  • 修复一些问题 (#605, #628, #632)

测试

  • 修复 Windows workerman-gateway 有时候测试失败 (#639)
imi - v2.1.57

Published by Yurunsoft 12 months ago

What's Changed

Full Changelog: https://github.com/imiphp/imi/compare/v2.1.56...v2.1.57

imi - v2.1.56

Published by Yurunsoft about 1 year ago

增强

  • 新增获取应用请求地址方法 (#587)
  • 支持获取限流桶内可用数量 (#588)
imi - v2.1.55

Published by Yurunsoft about 1 year ago

增强

  • apidoc 支持新版依赖,支持数组参数
  • apidoc 支持声明 required

优化

  • 优化 Swoole Server syncConnect 在关闭连接时也生效
imi - v2.1.54

Published by Yurunsoft about 1 year ago

增强

  • 修复有多个主键的表在生成模型时,主键顺序可能不正确 (#584)
imi - v2.1.53

Published by Yurunsoft about 1 year ago

增强

  • 增强 whereBrackets,支持查询条件收集器 (#580)

修复

  • 修复当开启 Redis 序列化时,geoAdd() 会报错:ERR value is not a valid float (#579)

  • 修复 Swoole PostGreSQL 驱动获取影响行数 (#581)

imi - v2.1.52

Published by Yurunsoft about 1 year ago

增强

  • 支持在分页查询时指定查询记录数量时的字段 (#575)

  • 支持 Swoole IPv6 (#573)

修复

  • 修复在特定情况 PDO 捕获异常做离线检测 errorInfo 为 null 时的错误 (#576)

  • 修复 AOP 热更新不生效 (#574)

  • 修复 AOP 引用参数传 null 时无法正确获取到值 (#572)

imi - v2.0.59

Published by Yurunsoft about 1 year ago

  • 修复在特定情况 PDO 捕获异常做离线检测 errorInfo 为 null 时的错误 (#576)

  • 修复 AOP 热更新不生效 (#574)

  • 修复 AOP 引用参数传 null 时无法正确获取到值 (#572)

imi - v2.1.51

Published by Yurunsoft about 1 year ago

增强

  • 模型关联支持跨数据库和跨连接池场景,模型关联注解新增 poolName 参数

  • 模型 @JsonDecode 注解新增 arrayWrap 参数 (#569)

优化

  • 回滚代码 (#568)

修复

  • 修复带 distinct 的分页查询器,记录数量返回不正确 (#571)

  • 修复 whereBrackets 返回非数组值时,生成的 SQL 不带括号 (#571)

  • 修复 PostgreSQL 模型在没有自增主键情况下使用 save() 执行错误的 SQL 语句 (#570)

  • 修复 Redis 模型的虚拟字段也会被保存的问题 (#567)

  • 修复 RedisModel 使用 Serializable、Serializables 注解后,影响保存的数据 (#566)

  • 修复 Swoole pgsql Statement 绑定 bool 类型值 (#565)

imi - v2.0.58

Published by Yurunsoft about 1 year ago

  • 修复 RedisModel 使用 Serializable、Serializables 注解后,影响保存的数据 (#566)

  • 修复 Redis 模型的虚拟字段也会被保存的问题 (#567)

imi - v2.1.50

Published by Yurunsoft over 1 year ago

What's Changed

Full Changelog: https://github.com/imiphp/imi/compare/v2.1.49...v2.1.50

imi - v2.0.57

Published by Yurunsoft over 1 year ago

  • 修复一些可能存在的数组键名是 int 类型时的错误 (#563)
imi - v2.1.49

Published by Yurunsoft over 1 year ago

增强

  • Redis 模型支持安全删除记录 (#560)

  • Redis 模型 hash_object 模式支持设置字段类型(json/list/set) (文档) (#560)

  • Redis 模型 hash_object 模式在不启用 redis 序列化情况下支持强类型字段 (#560)

优化

  • RedisModel::find()、generateKey()、generateMember() 改为参数非必传 (#560)

  • 优化容器单例对象当 __construct() 或 __init() 有协程上下文切换,不会导致单例被覆盖 (#562)

  • 优化代码 (#561)

修复

  • 修复 syncConnect 在 SWOOLE_PROCESS 模式也会生效 (#554)
imi - v2.1.48

Published by Yurunsoft over 1 year ago

增强

  • 支持 MySQL 高性能分页查询(大表分页类) (#542)

  • 生成模型相关改进 (#537)

  • 数据库迁移组件(imi-migration),支持一种新的迁移方式

优化

  • 优化软删除查询构建器及时释放内存(非泄露) (#547)

  • 简化框架配置 (#543)

  • 优化了一些代码

  • 改进服务相关 (#541)

  • 优化启动服务命令,修复 swoole 启动服务指定 workerNum 参数无效

  • 设置 Workerman 进程名称

修复

  • 修复 Swoole 下等待连接事件执行完才执行 receive 的机制偶尔会失效 (#551)

  • 修复 ConnectionContextStore 初始化 (#552)

  • 修复可能存在的定时器未捕获错误 (#550)

  • 修复事务嵌套时,事件触发不正确 (#548)

  • 修复事件名称是动态设定时,仅触发一次的事件被执行后,有残留数据导致内存泄漏 (#546)

  • 修复 SWOOLE_PROCESS 模式获取 master 进程 pid (#545)

  • 修复生成模型基类中的 ddlDecode 值有时不正确

  • 修复配置 beanScan 后扫描命名空间错误 (#540)

  • 修复同一个目录被多个命名空间映射,扫描报错 (#540)

  • 修复 AnnotationManager 获取注解方法,传入 $onlyFirst=true 找不到注解时特定情况不返回 null (#538)

  • 修复极端情况下某些类初始化不完全 (#553)

其它

  • 完善了一些测试

  • 更新了一些文档

  • 修复覆盖率测试和偶发测试失败 (#539)

  • 修复 Windows 测试 Workerman Gateway,启动服务时端口检测不完全

  • 每天北京时间 0 点定时测试 PHP8.2 + Swoole master 分支(pdo_pgsql hook 跑通)

  • 更新 php-cs-fixer 版本 (#536)

imi - v2.0.56

Published by Yurunsoft over 1 year ago

Package Rankings
Top 1.63% on Packagist.org
Badges
Extracted from project README
Latest Version Php Version Swoole Version imi Doc imi License star codecov 点击加群 贡献者
Related Projects