All Versions
15
Latest Version
Avg Release Cycle
167 days
Latest Release
-
Changelog History
Page 1
Changelog History
Page 1
-
v1.6.7 Changes
🔄 Changes
- 👌 Support coroutine for mingw
- 👌 Improve process poller to support to wait more processes on windows
🐛 Bugs Fixed
- 🏁 #175: Fix coroutine crash on windows
- 🛠 Fix some compilation errors
-
v1.6.6 Changes
🆕 New features
- 👌 Support *BSD system, e.g. FreeBSD ..
🔄 Changes
- 👌 Support to change the current directory for process
- 👌 Support stdin for creating process
- 🛠 Fix some compilation errors for mingw
-
v1.6.5 Changes
February 29, 2020 -
v1.6.4 Changes
October 11, 2019🆕 New features
- #70: Add
tb_stream_init_from_sock_ref()
to open a given socket as stream - ➕ Add stdfile api to read/write stdin, stdout and stderr.
- #81: Add set/get thread/process cpu affinity
- ➕ Add filelock api
- ➕ Add anonymous and named pipe
🔄 Changes
- ⚡️ Optimize queue_buffer module
- 👌 Improve stream interfaces
- 👌 Improve charset encoding and add ANSI support
- 👌 Improve atomic and add c11-like atomic apis
- 👌 Improve spinlock
- 👌 Support to redirect process output to pipe
- 👉 Uses virtual memory for coroutine stack
- 👌 Improve openssl/mbedtls for https
新特性
- #70: 添加
tb_stream_init_from_sock_ref()
接口去直接打开一个socket作为stream去读取数据。 - 添加stdfile接口去读写stdin, stdout和stderr。
- #81: 添加对进程和线程的cpu亲缘性设置和获取
- 添加filelock文件锁跨平台api接口
- 添加匿名管道,命名管道支持
改进
- 优化queue_buffer模块
- 改进stream接口实现
- 改进字符集编码转换,以及增加对ANSI编码的支持
- 改进原子操作,并增加c11风格原子接口
- 改进spinlock实现
- 新增进程输出重定向到管道
- 针对协程栈使用虚拟内存
- 改进基于openssl/mbedtls的https访问
- #70: Add
-
v1.6.3 Changes
August 01, 2018🆕 New features
- 🏁 #24: Support IOCP for coroutine on windows
🔄 Changes
- 🚚 Move docs directory to tbox-docs repo
- 👌 Support tinyc compiler
- ✂ Remove deprecated module (asio), please use coroutine module
- 👌 Improve memory for container
- Help valgrind to understand coroutines
🐛 Bugs fixed
- 🛠 Fix the charset problem of envirnoment variables
- 🛠 Fix process exit bug
- 🛠 Fix setenv empty value crash
- 🛠 Fix coroutine.sleep bug
- 🛠 Fix windows root path bug
- 🛠 Fix thread local memory leak
- 🛠 Fix context bug for coroutine
- 🛠 Fix
tb_vsnprintf
overflow - #43: Fix read dns server and stream bug
新特性
- 🏁 #24: 针对windows平台下的协程处理,增加IOCP支持
改进
- 📄 移除docs目录,放置到独立tbox-docs仓库,减少tbox.zip包大小
- 支持tinyc编译器
- 移除被废弃的模块(asio模块,先用coroutine代替)
- 精简优化容器库内存资源使用
- 帮助valgrind更好的理解coroutine
🐛 Bugs修复
- 🏁 修复windows环境变量的中文编码问题
- 修复后台进程退出问题
- 修复设置环境变量值为空时的崩溃问题
- 修复协程sleep超时覆写数据的bug
- 🏁 修复windows根路径问题
- 修复tls线程存储内存泄露问题
- 修复context切换问题
- 🖨 修复
tb_vsnprintf
栈溢出问题 - #43: 修复读取dns服务器以及stream读取bug
-
v1.6.2 Changes
August 29, 2017🆕 New features
- ➕ Add ping demo for network
🔄 Changes
- Modify license to Apache License 2.0
- 📇 Rename
--smallest=y|n
option to--small=y|n
- 👌 Support stat64
- Improve copy speed and fix permissions for
tb_file_copy
- 👌 Improve path operation for posix platform
- 👌 Improve socket interfaces and support icmp
- 👌 Improve xmake.lua and remove binary packages
🐛 Bugs fixed
- 🛠 Fix create file mode to 0644
- 🛠 Fix file and directory path bug
- 🛠 Fix remove directory with dead symbol link failed
- 🛠 Fix remove readonly file failed
- #34: Fix cache time and coroutine sleep bug
- #35: Fix epoll bug with the edge trigger mode
新特性
- 增加ping测试程序
改进
- 修改license,使用更加宽松的Apache License 2.0
- 重命名
--smallest=y|n
选项到--small=y|n
- 使用
stat64
支持大文件信息获取 - 改进
tb_file_copy
,更加快速的文件copy,并且修复copy后文件权限丢失问题 - 改进posix平台下的路径操作
- 改进socket初始化接口,支持icmp协议
- 改进xmake.lua,移除内置二进制依赖包文件
🐛 Bugs修复
-
v1.6.1 Changes
December 07, 2016🆕 New features
- 👌 Support coroutine context switch for mips
- Add
__tb_thread_local__
keyword macro - ➕ Add
--micro=y|n
option to compiling micro library (~64K) for the embed system - ➕ Add
tb_addrinfo_addr
andtb_addrinfo_name
interfaces - ➕ Add stackless coroutine
- ➕ Add semaphone and lock for the stackless coroutine
🔄 Changes
- ⚡️ Optimize io scheduler for coroutine, cache events for poller
- Add c11 _Static_assert
- ✂ Remove some deprecated interfaces for hash and platform
新特性
- 针对协程上下文切换,支持mips架构
- 添加
__tb_thread_local__
关键字宏 - 添加
--micro=y|n
选项,实现极小编译,针对嵌入式平台,编译tbox微内核(~64K) - ➕ 添加
tb_addrinfo_addr
andtb_addrinfo_name
接口 - 添加stackless协程,更加轻量的协程支持,每个协程只占用几十个bytes,同时支持io调度
- 针对stackless协程,增加lock和semaphone支持
改进
- 为协程优化io调度器,缓存poller轮询等待,减少频繁重复调用epoll_ctl, kevent等系统接口
- 添加对c11关键字_Static_assert的支持
- 针对hash和platform模块,移除一些废弃的接口
-
v1.6.0 Changes
October 30, 2016🆕 New features
- 👌 Support make command and compile directly without xmake
- ➕ Add switch context interfaces into platform module
- ➕ Add coroutine module (supports i386, x86_64, arm, arm64 ..)
- ➕ Add simple http server demo using coroutine
- ➕ Add simple spider using coroutine
- ➕ Add io poller interfaces(with epoll, poll, kqueue, select)
- 👌 Support mbedtls ssl library
- 👍 All io modules(stream, socket, http, ..) support coroutine mode
- 🔒 Provide lock, semaphone and channel for coroutine
🔄 Changes
- ⚡️ Optimize and rewrite thread local store module
- Modify thread interfaces
- 🗄 Mark the asio module as deprecated
- ⚡️ Optimize exception interfaces
🐛 Bugs fixed
- 🛠 Fix some warning and errors for compiler
- 🛠 Fix some thread bugs
- 🛠 Fix parse bplist uid type
新特性
- 支持make进行直接编译(会去自动下载xmake进行构建)
- 在平台库中,添加切换context上下文接口(参考boost.context实现原理进行重写,并对部分架构进行优化)
- 新增跨平台协程模块(支持i386, x86_64, arm, arm64),提供更加易用的高性能并发编程模式
- 新增基于协程的各种服务器开发实例(包括:简单轻量的http服务器,爬虫。。)
- 📊 新增poller轮询器接口,实现对epoll, poll, kqueue, select的封装,逐步取代老的aiop接口
- 新增mbedtls ssl库接口支持,目前已支持:openssl, polarssl, mbedtls
- tbox所有stream, socket, http, dns, ssl 等io相关操作,原生支持协程模式,并且可以在线程和协程间随意切换
- 为协程提供lock, semaphone, channel模块
改进
- 优化和重构线程局部存储TLS模块
- 修改部分线程接口
- asio模块被标记为废弃接口,下个版本将会被移除,逐步使用协程模式来实现异步io开发
- 优化异常捕获接口
🐛 Bugs修复
- 修复一些编译警告和错误
- 修复一些线相关bug
- 修复bplist中解析uid类型失败问题
-
v1.5.3 Changes
August 29, 2016🆕 New features
- ➕ Add wait multi-processes interface
- ➕ Add uuid generator
- ➕ Add hash library module
- Add
__tb_deprecated__
keyword and option
🔄 Changes
- 🚚 Move some utils interfaces to the hash module
- Rewrite random generator
🐛 Bugs fixed
- 🛠 Fix stdout compatibility issue for vs2015
- 🛠 Fix process arguments length limit
新特性
- 增加同时等待多个进程接口
- 增加uuid生成器
- 增加hash库模块
- 添加
__tb_deprecated__
关键字以及配置选项
改进
- 移动部分utils接口到hash模块
- 重写random生成器
🐛 Bugs修复
- 修复stdout在vs2015以上版本的兼容性问题
- 修复进程参数长度限制
-
v1.5.2 Changes
June 25, 2016🆕 New features
- ➕ Add smallest configure option
- ➕ Add process operation interfaces
🔄 Changes
- 👌 Improve envirnoment interfaces
- 👍 Modify xmake.lua for supporting xmake v2.x
🐛 Bugs fixed
- 🛠 Fix ltimer bug
- 🛠 Fix asio memory leaks bug
- 🛠 Fix asio httpd response bug on linux
- 🛠 Fix path bug for windows
新特性
- 增加smallest参数配置选项,实现一键配置最小化编译,禁用所有扩展模块和依赖库
- 增加进程创建和控制接口
改进
- 增强环境变量设置接口
- 修改xmake.lua支持最新版xmake v2.x, 简化编译配置
🐛 Bugs修复
- 修复ltimer定时器不准问题
- 修复asio部分内存泄露问题
- 🐧 修复asio/httpd在linux下keepalive模式,响应很慢问题
- 🏁 修复windows下路径处理的一些bug