Skip to content

Latest commit

 

History

History
187 lines (159 loc) · 7.46 KB

version.MD

File metadata and controls

187 lines (159 loc) · 7.46 KB

devfeel/dottask

Version 0.9.11

  • bugfix: add 'StopTask' logic to RemoveTask to fix exceptions where the task cannot be GC after removal
  • Thanks to @aixinaxc for #12
  • 2023-04-16 13:00 at ShangHai

Version 0.9.10

  • feature: add LICENSE file for issue #10, thanks to @katsusan.
  • feature: add PackageVersion use to return packageVersion info
  • 2022-04-17 08:00 at ShangHai

Version 0.9.9

  • feature: TaskContext增加TimeoutContext与TimeoutCancel属性,用于超时控制,应用可根据需要从TaskContext获取
  • feature: TaskInfo增加SetTimeout,用于设置超时时间,单位为秒
  • refactor: 移除TaskInfo.Context()
  • 2020-04-25 16:00 at ShangHai

Version 0.9.8

  • feature: TaskContext增加Header属性,类型为Map[string]interface{},用于在一次执行周期内传递自定义数据,每次执行完置空
  • feature: TaskContext增加Error属性,类型为error,用于在一次执行周期内传递执行结果的Error信息,每次执行完置空
  • 2020-03-28 16:00 at ShangHai

Version 0.9.7

  • refactor: 从StartNewService中移除LogCounterTask注册,独立为UseDefaultLogCounterTask供应用单独调用
  • 2020-03-16 19:00 at ShangHai

Version 0.9.6

  • Opt: add json tag '-' on TaskConfig.Handler, to ignore json marshal
  • 2020-03-15 12:00 at ShangHai

Version 0.9.5

  • Opt: 修正Logger定义,与dotlog适配
  • Opt: 整理代码格式
  • 2020-01-05 09:00 at ShangHai

Version 0.9.4

  • feature: 新增CreateTask用于根据TaskConfig对象创建对应的Task
  • Opt: 新增ErrNotSupportTaskType异常变量
  • About CreateTask:
    • Define: CreateTask(config TaskConfig) (Task, error)
    • 支持cron\loop\queue三类Task的创建
    • 定义错误的Task类型时将返回ErrNotSupportTaskType
  • Opt: 整理代码格式
  • 2020-01-04 09:00 at ShangHai

Version 0.9.3

  • Opt: 完善config模块,优化config注入模式
  • Opt: 增加ConfigHandle函数定义,用于应用自定义config加载实现(如从redis\mysql等源读取配置)
  • feature: 新增LoadFileConfig用于逐步替换原LoadConfig,主要用于读取xml\json\yaml格式配置文件
  • feature: 新增LoadConfigHandler用于应用自定义配置加载方式的注入
  • Opt: config完善注释
  • 2019-12-20 09:00 at ShangHai

Version 0.9.2

Version 0.9.1

  • feature: 新增输出Task信息与Counter信息的go原生HandlerFunc
  • fix: 修复CronTask对RunCounter统计逻辑BUG
  • refactor: 重构startCronTask实现
  • About HttpOutput:
  • How to use:
	server.RegisterHandlerFunc(dotweb.RouteMethod_GET, "/task/counter", global.DotTask.CounterOutputHttpHandler)
  • 2019-11-10 09:00

Version 0.9

  • feature: 新增计数器单元Counter,用于Task执行的统计度量
  • feature: 新增NewCronTask\NewLoopTask\NewQueueTask,用于创建独立的非强耦合TaskService的Task
  • feature: 新增TaskService.PrintAllTaskCounterInfo与GetAllTaskCountInfo用于获得计数数据
  • fix: 修复拼写错误,TaskService.OnBeforHandler修正为OnBeforeHandler
  • opt: 预处理拼写错误,TaskService.PrintAllCronTask设为下个版本失效,修正接口为PrintAllTasks
  • refactor: 重构CreateCronTask\CreateLoopTask\CreateQueueTask,内部调用相关New方法
  • About Counter:
    • 每个Task拥有CounterInfo,内含RunCounter与ErrorCounter
    • 每个Task在每次执行时会对执行次数以及发生error次数进行累加
    • 通过TaskService.GetAllTaskCountInfo获取相关计数信息
    • 通过TaskService.PrintAllTaskCounterInfo打印相关计数信息
  • 2019-11-09 01:00

Version 0.8.5

  • New feature: add support auto register queue task from config
  • 2019-06-14 15:00

Version 0.8.4

  • Bug Fixed: Auto restart task when task's app code panic error, if no auto restart, the goroutine will be stop
  • 2018-09-20 22:00

Version 0.8.3

  • New feature: add TaskService.GetAllTasks() used to return all task info which type is map[string]Task
  • Example:
    for _, t := range service.GetAllTasks(){
    		fmt.Println("GetAllTasks", t.TaskID(), t.GetConfig().TaskType, t.GetConfig().IsRun, t.GetConfig().Interval, t.GetConfig().Express)
    }
  • 2018-09-19 12:00

Version 0.8.2

  • 调整AddTask\RemoveTask\StartTask\StopTask\StopAllTask日志级别为info级别
  • 调整默认日志文件为dottask_{time}.log
  • Task新增GetConfig接口,用于返回当前task的设置信息,使用TaskConfig包装
  • 2018-05-18 16:00

Version 0.8.1

  • 修复BUG #8:ExpressType_WeekDay下未设置周日情况下自动添加周日运行
  • 2018-03-13 13:00

Version 0.8

  • 重构TaskInfo,分拆CronTask\LoopTask,增加Task interface
  • 重构TaskService,所有*TaskInfo调整为Task interface
  • 新增QueueTask,适用于内存队列任务的简单模型
  • 特别的,新增TaskContext.Message:用于每次Task执行上下文消息传输
  • 特别的,TaskContext.TaskData:用于当前Task全局设置的数据项
  • 新增example/queuetask
  • 修复Task.Stop, Task.Reset隐藏bug
  • 2017-11-27 10:00

Version 0.7

  • TaskInfo增加Reset方法,用于重设Task相关参数并重启Task
  • 新增TaskConfig结构,用于描述Task基本设置
  • 特别的,TaskID无法被覆盖
  • 特别的,TaskConfig.Handler为nil时,不会覆盖Task老的Handler
  • 特别的,TaskConfig.TaskData为nil时,不会覆盖Task老的TaskData
  • Support for #7 建议增加一个Reset方法,用于重置某个task
  • 2017-10-30 12:00

Version 0.6

  • TaskInfo增加GetTask、RunOnce方法
  • GetTask:根据TaskID获取*TaskInfo
  • RunOnce:仅执行一次TaskInfo对应的Handler,不匹配任何表达式,不捕获未处理异常
  • Support for #6 新增RunOnce方法建议
  • 2017-10-19 09:00

Version 0.5

Version 0.4

  • 增加ExceptionHandler\OnBeforHandler\OnEndHandler三个注入点
  • 新增ExceptionHandleFunc func(*TaskContext, error) 定义
  • 内建defaultExceptionHandler支持
  • 更新 example\normal
  • 2017-05-17 19:00

Version 0.3

  • 配置增加json文件支持
  • 支持链式调用
  • 更新 example\normal、example\loadfromconfig 示例, 新增 example\loadfromjson 示例
  • 贡献者:https://github.com/esap
  • 2017-04-19 09:00

Version 0.2.1

  • LoopTask增加DueTime设置,表示开始任务的延迟时间(以毫秒为单位),如果<=0则不延迟
  • 更新 example\normal、example\loadfromconfig 示例
  • 2017-03-23 16:00

Version 0.2

  • 新增配置文件加载方式
  • 新增默认FileLogger、FmtLogger内建支持,如果未显式设置logger,自动使用FmtLogger
  • 新增 example\normal、example\loadfromconfig 示例
  • 2017-03-23 10:00

Version 0.1.1

  • 新增支持RegisterHandler\GetHandler,便于配置工作
  • 2017-03-19 16:00

Version 0.1

  • Init version
  • 支持cron、loop两种模式
  • cron模式支持“秒 分 时 日 月 周”配置
  • loop模式支持毫秒级别
  • 上次任务没有停止的情况下下次任务顺延
  • 2017-03-01