.NET 知名框架 Furion 的定位,v4.8.3 版本发布
.NET 要在国内真正发展起来,必须得有一些追逐梦想的人在做着不计付出的事情,而我希望自己能贡献一份微薄之力。
项目信息
- 文档地址:https://furion.baiqian.ltd/
- 仓库地址:https://gitee.com/dotnetchina/Furion
- Nuget地址:https://www.nuget.org/profiles/monk.soul
发展事记
2022年 12 月 07 日,Furion 框架在 Nuget 平台总下载突破 500万,比上一次破 400万仅仅用了一个月08天。https://www.nuget.org/profiles/monk.soul
- 2020 年
- 2020 年 09 月 01 日,
Fur正式写下第一行代码。
- 2020 年 09 月 01 日,
- 2021 年
- 2021 年 08 月 21 日,
Furion在Nuget平台突破100万下载量。
- 2021 年 08 月 21 日,
- 2022 年
- 2022 年 05 月 28 日,
Furion在Nuget平台突破200万下载量。 - 2022 年 08 月 18 日,
Furion在Nuget平台突破300万下载量。 - 2022 年 10 月 29 日,
Furion在Nuget平台突破400万下载量。 - 2022 年 12 月 07 日,
Furion在Nuget平台突破500万下载量。
- 2022 年 05 月 28 日,
了解 Furion 完整的发展大事记:https://furion.baiqian.ltd/docs/course
框架定位
很多人问过,我不知道该怎么回答,因为我自己几乎没有考虑过这个问题,还包括盈利的问题。
我没考虑的是 Furion 一定要是某种形式的框架,譬如企业级、微服务、单体等形式。Furion 一贯的思路是,用户迫切需要什么,那么我们就推什么,尽管最终可能让它变成四不像,可说不定用户要的就是 “四不像”。
当然也要有所为有所不为,用户需要的,但感觉自己做不好的,还是别去碰了,精心完善现有功能才是正道。
好吧,其实多数时候,我们想得太多了,实际去做的太少了。就好像写这个内容时想的是个中长篇,可真正话到手上只有寥寥数语。
做事何尝不是如此,光有 idea 是不值钱的!
-- powerby javayou
本期更新
在过去两年,实现
Furion从无到有,编写文档已逾三百万字,过程心酸开源人自知。这一路日夜兼程,嘲讽批评常伴眼耳,即便辛苦无奈、想过放弃,但为了那微不足道的成就感依然努力着。
当然,也收获了不少... 越来越多拥趸者,越发精湛技术能力,更高层次思维模式,还有许多跨界跨行朋友。
在 《开源指北》中,我曾说道:“开源如同人的脸,好坏一面便知,缺点可能会受到嘲讽批评,优点也会收获赞扬尊重。别担心,他们正在塑造更好的你。”
所以,这一次重新起航,重塑
Furion重塑自己。也许未来在某个 IT 圈但凡有人谈起.NET还能瞟到Furion的身影。
v4.8.3版本细节:https://gitee.com/dotnetchina/Furion/issues/I657O5 2022.12.08v4.8.2版本细节:https://gitee.com/dotnetchina/Furion/issues/I63CTP 2022.11.27v4.8.1版本细节:https://gitee.com/dotnetchina/Furion/issues/I62RX3 2022.11.24v4.8.0版本细节:https://gitee.com/dotnetchina/Furion/issues/I62NZV 2022.11.23
新特性
- [新增] 🎉 全新的定时任务模块 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所有带At的Cron表达式触发器构建器及特性 4.8.2.5 ⏱️2022.11.29 #I63PLR - [新增]
App.GetThreadId()和App.GetTraceId()获取线程Id和请求TraceId4.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 - [新增]
JobDetail和Trigger自定义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主机返回值IHost4.8.0 #I61XHV - [新增] 日志
JSON自动美化格式化器LoggerFormatter.JsonIndented4.8.0 7b9268c - [新增]
LoggingMonitor的JsonIndented配置,可配置是否美化JSON4.8.0 7b9268c - [新增] 日志模块是否输出
TraceId,同一个请求的日志TraceId一致 4.8.1.3 #I62VGG
突破性变化
问题修复
- [修复] 作业拥有多个触发器时暂停作业后依然存在个别未暂停的清空(并发问题) 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
其他更改
文档
- [新增] 新版本定时任务文档
- [新增] Cron 表达式解析文档
- [新增] 任务队列文档
- [新增] Schedular 全局静态类文档
- [新增] TaskQueued 全局静态类文档
- [新增] 作业触发器
ResetOnlyOnce文档 4.8.1.5 ⏱️2022.11.25 a8be728 - [新增] 通过
Roslyn动态编译代码创建IJob类型文档 4.8.1.5 ⏱️2022.11.25 2c5e5be - [新增] 自定义
JobDetail和Trigger输出SQL文档 4.8.2 ⏱️2022.11.27 0bb9d8f - [新增] 远程请求
[QueryString]配置时间类型Format格式化文档 4.8.1.2 ⏱️2022.11.25 !673 - [更新]
Serve.Run()入门文档文档、安全授权文档、前端接口代理文档、事件总线文档、日志文档、Worker Service 文档、数据库实体触发器文档、App静态类文档、包管理工具文档
孤芳自赏
纵你阅人何其多,再无一人恰似我。
