2022.6.2 V2.4.9 [新增]支持zip文件解压与创建 [新增]动态安装扩展库,通过install命令来安装可选扩展库 [新增]扩展了gdimage库,为可选扩展,其代码开源在github上,开发者可以自行编译或者通过install安装编译好的二进制文件 [新增]CLibPointer支持读取和修改内存数据 [修复]mac版本和linux版本md5不准 2022.5.9 V2.4.8 [优化]嵌入到其他语言中时,支持同一个进程内创建多个CBrother运行时,各自独立互不干扰 [新增]excel支持插入行列操作 [新增]正则表达式增加'u'匹配模式表示unicode编码,可用于中文匹配 [新增]bytearray支持查找某字符出现的坐标位置 [修复]http服务端处理get方法时getData为null 2022.4.15 V2.4.7 [新增]原生支持日志系统,能任意控制脚本内与扩展库内日志输出方式与输出格式 [优化]类内this与super增加特殊语义,可用于控制多层继承时的父子类同名函数调用 2022.3.12 V2.4.6 [优化]ftp模块支持超大文件传输,支持断点续传 [优化]http服务支持超大文件传输,支持断点续传 [优化]File文件操作类支持超大文件 [优化]http服务协程调度策略优化,并发能力再度升级 [优化]http客户端支持head/put/delete方法 [优化]http客户端addData接口支持二进制流类型数据 [修复]File文件操作类write方法写入byte类型时出错 2022.2.25 V2.4.5 [新增]函数参数支持缺省值 [新增]封装了通过匿名管道与控制台程序通讯,在lib/consoleprocess.cb中,使用样例在sample/console.cb中 [新增]线程本地存储接口 [新增]整理线程相关函数,新增了thread模块 [新增]mysql通配符方式调用支持将参数放进一个数组传入 [新增]sqlite通配符方式调用支持将参数放进一个数组传入 [优化]UdpModule接口整理,返回值优化 [修复]os::stat接口判断文件如果大于2G时出错 [修复]module中使用this出错问题 2022.2.1 V2.4.4 [新增]throw关键字,支持开发者抛出异常 [新增]Json字串和Map Array互转 [新增]Json增加获取所有key的接口 [新增]mysql模块支持事务,支持通配符,支持自定义字符集 [新增]sqlite模块支持事务,支持通配符 [新增]正则表达式RegEx支持匹配模式,整理了正则接口。matchAll与searchAll不再建议使用 [新增]mtime接口获取毫秒级时间戳,GetMillSecond保留但不再建议使用 [修复]try catch嵌套时候执行顺序BUG [修复]clib模块获取结构体内的数组为空的BUG 2022.1.9 V2.4.3 [新增]导出了C接口,支持C语言扩展插件 [新增]ftp服务与客户端 [新增]smtp邮件客户端 [新增]os模块,整理了系统相关接口 [新增]net模块,整理了网络相关接口 [新增]文件操作新增readBytes和seek接口 [新增]字符串操作新增sprintf接口 [修复]条件语句中有括号报错 [修复]调试中抛出异常导致崩溃 2021.12.10 V2.4.2 [新增]Excel模块增加字体设置,边框设置,背景色设置,单元格尺寸,合并单元格功能 [新增]cbrother启动命令行支持当前工作目录的相对路径检索 [新增]MySQL模块增加获取结果列名接口,增加update接口,老的upDate接口保留但不再建议使用 [新增]SQLite增加update接口,老的upDate接口保留但不再建议使用 [新增]windows版本窗口程序支持菜单栏和单选框,例子在sample\windows\winmenu.cb [修复]类二级子成员访问一个没有的方法时的崩溃问题 [优化]import语句后如果书写分隔符';'也不再报错 [优化]httpeasy接口调整,支持同时监听多端口 [修复]websocket协议异常 2021.11.28 V2.4.1 [新增]关键字'module',可以理解为命名空间 [新增]域运算符'::',用来访问某模块内的内部成员,模块名::成员名 [新增]math模块,提供了一些数学计算的常用方法 [修复]2.4.0版本gc优化引起的的一些不稳定因素 2021.10.7 V2.4.0 [新增]HttpServer请求处理线程中支持协程,大幅度提升HttpServer并发能力 [新增]支持阻塞模式socket [新增]native代码扩展的类可以被继承 [优化]gc优化,gc细分到各个用户线程中使得STW可以达到1天甚至几天触发一次,gc效率大幅度提升 [优化]TcpModule、UdpModule、Thread、HttpServer等模块的优雅退出相关优化 2021.9.5 V2.3.6 [新增]Array和Map通过[]和{}定义是支持嵌套定义 [优化]gc优化 2021.8.17 V2.3.5 [修复]2.3.3版本Event优化引发的崩溃BUG 2021.8.15 V2.3.4 [新增]HttpClient支持http,https,socket5代理 [新增]CBCLib模块CLibPointer指针类型增加setByte可单独修改某字节 [修复]CBCLib模块CLibFunc调用返回值为bool类型时返回了整型的BUG [修复]正则表达式searchAll只返回了一条结果的BUG,返回值从一维数组修改为二维数组 [优化]strfind和strifind增加第三个缺省参数可指定从第几个字符开始查找 [优化]HttpServer底层线程调度优化 2021.8.8 V2.3.3 [新增]线程池库 lib/threadpool [新增]HttpClientRequest增加超时接口,http头获取接口 [修复]HttpClientRequest请求https时概率出错问题 [优化]Event内部优化,增加reset接口使对象可复用 [新增]strjion函数 2021.6.2 V2.3.2 [新增]GetInput全局函数支持控制台输入 [修复]excel模块打开xlsx格式文件时最大行数多加1的BUG [修复]excel模块成功打开csv格式文件时却返回失败的BUG 2020.12.20 V2.3.1 [新增]新增httpeasy框架 [修复]调试时多级目录中的源代码断点不命中的BUG 2020.11.7 V2.3.0 [新增]支持vscode断点调试 [优化]浮点类型输出字符串末尾0太多的问题 2020.7.15 V2.2.5 [新增]支持使用单引号表示chat字符,var t = 'a';则变量t为字母a的ascii码值97,类型为int [修复]map的key不再区分int与uint类型 2020.7.5 V2.2.4 [新增]SQLite模块支持按照列名获取结果 [优化]Json多线程稳定性提高,支持了修改Json子节点 [优化]TcpModule性能提升 2020.6.14 V2.2.3 [新增]const定义支持表达式 [新增]ByteArray支持获取指定长度字符串 [修复]json转化long类型溢出错误 [修复]excel设置表格long类型溢出错误 2020.4.6 V2.2.2 [新增]HttpServer支持一个端口对应多个不同内容的网站 [修复]右移运算符BUG [修复]循环条件过多时出错的BUG 2020.2.19 V2.2.1 [新增]MySQL模块支持按照列名获取结果 [新增]MySQL模块支持自动匹配数据库列类型返回对应类型数据 [修复]if条件表达式如果为一个对象时候,判断错误 [修复]else后续的'{'如果中间没有空格编译失败 [修复]foreach_del删除首位元素时候多跳过一个节点 2020.2.4 V2.2.0 [新增]新增long类型,表示范围为-2^63(-9,223,372,036,854,775,808)到2^63-1(9,223,372,036,854,775,807) [修复]for循环多条循环条件时跳转错误BUG [修复]CLib回调函数返回值为double时数值错误的BUG 2020.1.19 V2.1.5 [修复]纯虚函数BUG [修复]被引用文件路径过长时,提示未找到引用文件的BUG [优化]http请求头字段统一转小写,方便和其他webserivce协作 [优化]http超时时间从默认不超时修改为默认10秒超时,防止新开发者总是碰到线程池满的问题 [优化]https服务默认关闭SSL2和SSL3协议,防止降级攻击 [新增]windows版本系统API扩展 2020.1.1 V2.1.4 [新增]类函数增加virtual关键字,支持纯虚函数 [修复]异或符号两边没有空格时编译报错 [新增]windows版本lib库内增加了调用系统API和写windows窗口程序的库文件.sample增加了一个win32界面程序例子:'计算器' 2019.12.5 V2.1.3 [修复]多层继承中,在构造函数中保存父类与子类同名函数到成员变量中,结果会保存成子类函数的BUG [修复]多文件互相引用时全局变量BUG [修复]CLib库结构体获取指针时地址不自增的的BUG 2019.12.1 V2.1.2 [新增]CLib模块支持第三方库的回调函数 2019.11.13 V2.1.1 [优化]支持utf8-bom文件格式 [优化]字符串处理函数扩展 [修复]文件包含关系错乱BUG修复 2019.9.4 V2.1.0 [新增]新增CLib模块,可以调用第三方动态库 [新增]字符串转码函数 [修复]GC线程在CPU资源极限使用情况下的小概率死锁问题 2019.7.22 V2.0.1 [修复]2.0版本崩溃问题以及语法错乱问题修复。 [优化]性能提升,执行性能为所有历史版本中效率最高的一版。 2019.6.27 V2.0.0 [新增]编译阶段支持预计算,var a = 1 + 2 * 3会被编译成var a = 7 [新增]foreach、foreach_reverse、foreach_del语法,方便遍历容器 [新增]Array支持用[]来初始化 [新增]Map支持用{}来初始化 [新增]Map支持用[]访问与修改元素 [优化]简化了启动命令,直接传入脚本全路径即可运行 2.0是一个大版本,重构了编译器和解释器,增加了多线程安全性。之所以要重构是因为很多疑难问题是1.0版本代码早期架构的问题,另一方面是1.0在迭代升级后性能下降的过于明显。所以2.0将这些问题一并 解决了。扩展了框架,后续的语法扩展以及性能调优都有非常大的空间。 最后,2.0是完全兼容1.0的。 -------------------------------------------------------------------------------------- 2019.4.23 V1.1.0 [新增]SQLite扩展模块 [优化]GC阶段性能优化,提升了多线程时cpu利用率 [优化]http服务器静态资源下载性能提升 2019.4.12 V1.0.9 [新增]http模块支持form表单数据 [新增]http模块客户端支持模拟提交form表单数据 [新增]http服务器支持自定义MIME 2019.3.28 V1.0.8 [新增]支持Excel操作 [新增]支持字符串直接用>,<,>=,<=比较字典序大小 [修复]Https客户端用HTTP1.0协议与某些服务器通信时数据接收不全 2019.3.7 V1.0.7 [新增]支持WebSocket协议 [新增]Http客户端支持HTTP1.0版本协议 [修复]if或while条件中自增与自减语句在特定条件下引起的崩溃 [修复]TcpModule对象被FullGC销毁后隐性调用stop引起的死锁 [修复]TcpModule在Liunx下连接成功后概率性瞬断 [修复]TcpModule在MacOS下概率性崩溃 [优化]TcpModule在MacOS下大量并发时性能提升 2019.1.31 V1.0.6 [新增]Http客户端支持网络连接复用 [修复]Http模块静态文件下载服务性能优化 2019.1.19 V1.0.5 [新增]支持正则表达式 [修复]TCP模块onRecv回调没有返回值时某些系统下直接关闭socket 2019.1.10 V1.0.4 [新增]增加Event事件类,方便线程间的协作 [新增]回调函数支持类的成员函数 [修复]Https协议在某些服务器上出错的BUG [优化]优化合并某些字节码,提高执行效率 [优化]优化GC方式,提高YoungGC命中率,降低对FullGC的依赖 2018.12.31 V1.0.3 [新增]Http模块新增Cookie类,可支持多Cookie设置 [新增]增加处理进程开启与关闭的一系列内置函数 [修复]Socket模块UdpModule崩溃问题 2018.12.19 V1.0.2 [新增]Thread类,提供线程消息处理与定时器功能 [修复]http模块设置超时时间不准确的BUG 2018.12.10 V1.0.1 [优化]GC阶段增加Young内存代,防止SmallGC时间设置过长时,频繁new临时对象造成内存疯长,当对象5分钟都没有释放时,变为非临时内存进入Old内存代,才受SmallGC时间控制。 2018.10.9 V1.0.0 发布的第一个版本,脚本不足之处持续改进中