Skip to content

v4.8.3

Compare
Choose a tag to compare
@MonkSoul MonkSoul released this 08 Dec 04:11
· 1655 commits to v4 since this release

在过去两年,实现 Furion 从无到有,编写文档已逾三百万字,过程心酸开源人自知。

这一路日夜兼程,嘲讽批评常伴眼耳,即便辛苦无奈、想过放弃,但为了那微不足道的成就感依然努力着。

当然,也收获了不少... 越来越多拥趸者,越发精湛技术能力,更高层次思维模式,还有许多跨界跨行朋友。

在 《开源指北》中,我曾说道:“开源如同人的脸,好坏一面便知,缺点可能会受到嘲讽批评,优点也会收获赞扬尊重。别担心,他们正在塑造更好的你。”

.NET 要在国内真正发展起来,必须得有一些追逐梦想的人在做着不计付出的事情,而我希望自己能贡献一份微薄之力。所以,这一次重新起航,重塑 Furion 重塑自己。也许未来在某个 IT 圈但凡有人谈起 .NET 还能瞟到 Furion 的身影。

https://furion.baiqian.ltd/docs/upgrade


  • 新特性

    • [新增] 🎉 全新的定时任务模块 4.8.0查看源码
    • [新增] 🎉 全新的 Cron 表达式模块 4.8.0查看源码
    • [新增] 🎉 全新的任务队列模块 4.8.3查看源码
    • [新增] 定时任务间隔分钟作业触发器 Triggers.PeriodMinutes(5)[PeriodMinutes(5)] 特性 4.8.2.8 ⏱️2022.12.01 8e1f06f
    • [新增] 定时任务工作日作业触发器 Triggers.Workday()[Workday] 特性 4.8.2.6 ⏱️2022.11.30 28b2d20
    • [新增] 定时任务作业校对功能,可对误差进行校正 4.8.2.6 ⏱️2022.11.30 f725a25
    • [新增] Crontab.ParseAt(..) 静态方法 4.8.2.6 ⏱️2022.11.30 035cc23
    • [新增] Crontab 所有 Macro At 静态方法 4.8.2.6 ⏱️2022.11.30 a15b69d
    • [新增] Crontab.Workday 表示周一至周五的 Macro 静态属性 4.8.2.6 ⏱️2022.11.30 a15b69d
    • [新增] 定时任务 Triggers 所有带 AtCron 表达式触发器构建器及特性 4.8.2.5 ⏱️2022.11.29 #I63PLR
    • [新增] App.GetThreadId()App.GetTraceId() 获取线程 Id 和请求 TraceId 4.8.2.4 ⏱️2022.11.29 910fc1f
    • [新增] App.GetExecutionTime(() => { /*Your Code*/ }) 获取代码执行耗时 4.8.2.4 ⏱️2022.11.29 5ab4b19
    • [新增] 定时任务批量添加 SchedulerBuilder 作业功能 4.8.2.4 ⏱️2022.11.29 5faa67b
    • [新增] 定时任务 BuildSqlType 配置,可设置生成不同数据库类型的 SQL 语句 4.8.2.3 ⏱️2022.11.29 293f9bc !675
    • [新增] JobDetailTrigger 自定义 ConvertToSQL 输出 SQL 配置 4.8.2 ⏱️2022.11.27 0bb9d8f
    • [新增] 动态作业处理程序委托支持 4.8.1.8 ⏱️2022.11.27 e02266c
    • [新增] 作业触发器 ResetOnlyOnce 属性,支持只运行一次的作业重新启动服务重复执行 4.8.1.5 ⏱️2022.11.25 a8be728
    • [新增] 事件总线支持简单的 Order 编排规则 4.8.0 833c0d4
    • [新增] 远程请求代理模式对于基元类型参数支持自动获取参数名 4.8.0 #I60OT6
    • [新增] 动态 WebAPI 自动识别方法的接口参数是否是服务,如果是自动添加 [FromServices] 特性 4.8.0 fae60a9
    • [新增] 远程请求 [QueryString] 特性添加时间格式化 Format 属性 4.8.1.2 !670
    • [新增] Serve.Run 模式的 .ConfigureServices 方法 4.8.0 023391b
    • [新增] Serve.RunGeneric 通用泛型主机方法 4.8.0 6865f3d
    • [新增] Serve.Run()additional 参数 4.8.0 023391b
    • [新增] Serve.Run 主机返回值 IHost 4.8.0 #I61XHV
    • [新增] 日志 JSON 自动美化格式化器 LoggerFormatter.JsonIndented 4.8.0 7b9268c
    • [新增] LoggingMonitorJsonIndented 配置,可配置是否美化 JSON 4.8.0 7b9268c
    • [新增] 日志模块是否输出 TraceId,同一个请求的日志 TraceId 一致 4.8.1.3 #I62VGG
  • 突破性变化

    • [调整] 旧版本定时任务为 弃用 状态(2022 年 12 月 31 日彻底删除),如需取消警告在 .csproj 中添加 <NoWarn>0618</NoWarn> 4.8.0 旧版本文档
    • [移除] JSON 静态类所有方法的 serviceProvider 参数(无破坏) 4.8.0 962fb16
    • [移除] Http 静态类所有方法的 serviceProvider 参数(无破坏) 4.8.0 962fb16
    • [调整] 定时任务底层所有代码,日志,注释,文档 4.8.1.10 ⏱️2022.12.05
  • 问题修复

    • [修复] 作业拥有多个触发器时暂停作业后依然存在个别未暂停的清空(并发问题) 4.8.2.12 ⏱️2022.12.07 #I655W9
    • [修复] 通过 Ctrl + C 终止应用程序后获取 TraceId 出现对象已释放异常 4.8.1.12 ⏱️2022.12.07 55c3e49
    • [修复] cli.ps1 脚本不支持 EFCore 7.0 问题 4.8.1.12 ⏱️2022.12.07 !676
    • [修复] EFCore 实体监听器 IEntityChangedListener 问题 4.8.1.7 ⏱️2022.11.26 #I61CTI
    • [修复] 定时任务生成的 SQL 语句不支持 MySQL 问题 4.8.1.7 ⏱️2022.11.26 #I638ZC
    • [修复] 运行时启动/暂停作业无效问题 4.8.1.6 ⏱️2022.11.25 #I6368M
    • [修复] 作业触发器不符合下一次执行规律但 NextRunTime 不为 null 情况 4.8.1.5 ⏱️2022.11.25 a8be728
    • [修复] 从 .NET6/7 降级回 .NET5 找不到 .AddDateOnlyConverters().AddTimeOnlyConverters() 拓展方法问题 4.8.0 cdddf8d
    • [修复] Retry.InvokeAsync 方法如果不传入 fallbackPolicy 参数报空异常问题 4.8.0 21af847
    • [修复] 动态 WebAPI 不支持在 .NET7 不声明 [FromServices] 自动注入问题 4.8.0 #I62HP1
    • [修复] 远程请求 GetAsStreamAsync()System.InvalidOperationException: Response Content-Length mismatch 异常问题 4.8.1 #I62QY4
    • [修复] LoggingMonitor 配置 WriteFilter 不起作用问题 4.8.1.2 #I62P52 90bcfda
    • [修复] EFCore 个别关系型数据库 PostgreSQL/SqlServer/MySql 出现短暂不能连接问题 4.8.1.3 2c530ef
    • [修复] 日志模块因 v4.8.0+ 版本导致写入数据库日志空异常问题 4.8.2.1 ⏱️2022.11.28 8d9d72b
  • 其他更改

    • [调整] 定时任务调度器时间精度,控制持续执行一年误差在 100ms 以内 4.8.2.9 ⏱️2022.12.01 334d089
    • [调整] 定时任务作业计划工厂 GetNextRunJobs() 方法逻辑 4.8.2.7 ⏱️2022.11.30 #I63VS2
    • [调整] LoggingMonitor 解析授权逻辑,如果接口未授权则不打印授权信息 4.8.2.1 ⏱️2022.11.28 #I63D2E
  • 文档

    • [新增] 新版本定时任务文档
    • [新增] Cron 表达式解析文档
    • [新增] 任务队列文档
    • [新增] Schedular 全局静态类文档
    • [新增] TaskQueued 全局静态类文档
    • [新增] 作业触发器 ResetOnlyOnce 文档 4.8.1.5 ⏱️2022.11.25 a8be728
    • [新增] 通过 Roslyn 动态编译代码创建 IJob 类型文档 4.8.1.5 ⏱️2022.11.25 2c5e5be
    • [新增] 自定义 JobDetailTrigger 输出 SQL 文档 4.8.2 ⏱️2022.11.27 0bb9d8f
    • [新增] 远程请求 [QueryString] 配置时间类型 Format 格式化文档 4.8.1.2 ⏱️2022.11.25 !673
    • [更新] Serve.Run() 入门文档文档、安全授权文档、前端接口代理文档、事件总线文档、日志文档、Worker Service 文档、数据库实体触发器文档、App 静态类文档、包管理工具文档