hutool/CHANGELOG.md
2022-06-18 11:06:56 +08:00

256 lines
16 KiB
Markdown
Executable File
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 🚀Changelog
-------------------------------------------------------------------------------------------------------------
# 5.8.4.M1 (2022-06-18)
### 🐣新特性
* 【extra 】 Sftp增加构造重载支持超时pr#653@Gitee
* 【core 】 BeanUtil增加isCommonFieldsEqualpr#653@Gitee
* 【json 】 修改byte[]统一转换为数组形式issue#2377@Github
* 【http 】 HttpResponse增加body方法支持自定义返回内容pr#655@Gitee
* 【core 】 修改ObjectUtil.isNull逻辑issue#I5COJF@Gitee
*
### 🐞Bug修复
* 【extra 】 修复createExtractor中抛出异常后流未关闭问题pr#2384@Github
* 【core 】 修复CsvData.getHeader没有判空导致空指针问题issue#I5CK7Q@Gitee
* 【core 】 修复单字母转换为数字的问题issue#I5C4K1@Gitee
-------------------------------------------------------------------------------------------------------------
# 5.8.3 (2022-06-10)
### 🐣新特性
* 【extra 】 mail增加writeTimeout参数支持issue#2355@Github
* 【core 】 FileTypeUtil增加pptx扩展名支持issue#I5A0GO@Gitee
* 【core 】 IterUtil.get增加判空issue#I5B12A@Gitee
* 【core 】 FileTypeUtil增加webp类型判断issue#I5BGTF@Gitee
### 🐞Bug修复
* 【core 】 修复NumberUtil.isXXX空判断错误issue#2356@Github
* 【core 】 修复Convert.toSBC空指针问题issue#I5APKK@Gitee
* 【json 】 修复Bean中存在bytes无法转换问题issue#2365@Github
* 【core 】 ArrayUtil.setOrAppend()传入空数组时抛出异常issue#I5APJE@Gitee
* 【extra 】 JschSessionPool修复空指针检查问题issue#I5BK4D@Gitee
* 【core 】 修复使用ValueProvider中setFieldMapping无效问题issue#I5B4R7@Gitee
* 【json 】 修复byte[]作为JSONArray构造问题issue#2369@Github
-------------------------------------------------------------------------------------------------------------
# 5.8.2 (2022-05-27)
### 🐣新特性
* 【core 】 BeanUtil拷贝对象增加空检查issue#I58CJ3@Gitee
* 【db 】 Column#size改为long
* 【core 】 ClassUtil增加isInterface等方法pr#623@Gitee
* 【socket 】 增加ChannelUtil
### 🐞Bug修复
* 【extra 】 修复SshjSftp初始化未能代入端口配置问题issue#2333@Github
* 【core 】 修复Convert.numberToSimple转换问题issue#2334@Github
* 【core 】 修复TemporalAccessorConverter导致的转换问题issue#2341@Github
* 【core 】 修复NumberUtil除法空指针问题issue#I58XKE@Gitee
* 【core 】 修复CAR_VIN正则pr#624@Gitee
* 【db 】 修复count查询别名问题issue#I590YB@Gitee
* 【json 】 修复json中byte[]无法转换问题issue#I59LW4@Gitee
* 【core 】 修复NumberUtil.isXXX未判空问题issue#2350@Github
* 【core 】 修复Singleton中ConcurrentHashMap在JDK8下的bug引起的可能的死循环问题issue#2349@Github
-------------------------------------------------------------------------------------------------------------
# 5.8.1 (2022-05-16)
### 🐣新特性
* 【core 】 BooleanUtil增加toBooleanObject方法issue#I56AG3@Gitee
* 【core 】 CharSequenceUtil增加startWithAnyIgnoreCase方法issue#2312@Github
* 【system 】 JavaInfo增加版本issue#2310@Github
* 【core 】 新增CastUtilpr#2313@Github
* 【core 】 ByteUtil新增bytesToShort重载issue#I57FA7@Gitee
* 【core 】 ReflectUtil.invoke方法抛出运行时异常增加InvocationTargetRuntimeExceptionissue#I57GI2@Gitee
* 【core 】 NumberUtil.parseNumber支持16进制issue#2328@Github
### 🐞Bug修复
* 【core 】 MapUtil.map对null友好且修复了测试用例中分组问题pr#614@Gitee
* 【core 】 修复BeanUtil.beanToMap中properties为null的空指针问题issue#2303@Github
* 【db 】 DialectName中修正为POSTGRESQLissue#2308@Github
* 【core 】 修复BeanPath无法识别引号内的内容问题issue#I56DE0@Gitee
* 【core 】 修复Map.entry方法返回可变不可变相反问题
* 【jwt 】 修复jwt的过期容忍时间问题issue#2329@Gitee
-------------------------------------------------------------------------------------------------------------
# 5.8.0 (2022-05-06)
### ❌不兼容特性
* 【extra 】 升级jakarta.validation-api到3.x包名变更导致不能向下兼容
* 【core 】 BeanUtil删除了beanToMap(Object)方法,因为有可变参数的方法,这个删除可能导致直接升级找不到方法,重新编译项目即可。
### 🐣新特性
* 【core 】 Singleton增加部分方法pr#609@Gitee
* 【core 】 BeanUtil增加beanToMap重载pr#2292@Github
* 【core 】 Assert增加对应的equals及notEquals方法pr#612@Gitee
* 【core 】 Assert增加对应的equals及notEquals方法pr#612@Gitee
* 【core 】 DigestUtil增加sha512方法issue#2298@Github
### 🐞Bug修复
* 【db 】 修复RedisDS无法设置maxWaitMillis问题issue#I54TZ9@Gitee
-------------------------------------------------------------------------------------------------------------
# 5.8.0.M4 (2022-04-27)
### ❌不兼容特性
* 【json 】 【可能兼容问题】JSONArray删除部分构造
* 【json 】 【可能兼容问题】JSONTokener使用InputStream作为源时由系统编码变更为UTF-8
### 🐣新特性
* 【core 】 BeanUtil增加toBean重载pr#598@Gitee
* 【json 】 新增JSONParser
* 【json 】 JSON新增在解析时的过滤方法issue#I52O85@Gitee
* 【core 】 添加ArrayUtil.distinct、CollUtil.distinct重载issue#2256@Github
* 【core 】 添加TransMap、FuncMap、ReferenceConcurrentMap、WeakConcurrentMap
* 【json 】 添加ObjectMapper
* 【core 】 CHINESE_NAME正则条件放宽pr#599@Gitee
* 【extra 】 增加JakartaServletUtilissue#2271@Github
* 【poi 】 ExcelWriter支持重复别名的数据写出issue#I53APY@Gitee
* 【core 】 增加Hashidsissue#I53APY@Gitee
* 【core 】 ReflectUtil.newInstanceIfPossible添加枚举、数组等类型的默认实现
* 【core 】 CombinationAnnotationElement增加过滤pr#605@Gitee
* 【all 】 精简CHANGELOG
* 【core 】 新增AnsiEncoder
* 【log 】 新增彩色日式输出风格ConsoleColorLogpr#607@Gitee
### 🐞Bug修复
* 【core 】 修复StrUtil.firstNonX非static问题issue#2257@Github
* 【core 】 修复SimpleCache线程安全问题
* 【core 】 修复ClassLoaderUtil中可能的关联ClassLoader错位问题
* 【extra 】 修复Sftp错误内容解析大小写问题issue#I53GPI@Gitee
* 【core 】 修复Tailer当文件内容为空时会报异常问题pr#602@Gitee
-------------------------------------------------------------------------------------------------------------
# 5.8.0.M3 (2022-04-14)
### ❌不兼容特性
* 【core 】 StreamProgress#progress方法参数变更为2个pr#594@Gitee
* 【core 】 SimpleCache的raw key使用Mutable
* 【core 】 ArrayUtil.join删除已经弃用的无用原始类型重载
* 【core 】 删除Holder类ReUtil.extractMultiAndDelPre方法参数改为Mutable
### 🐣新特性
* 【core 】 CopyOptions支持以Lambda方式设置忽略属性列表pr#590@Gitee
* 【core 】 增加中文姓名正则及其校验pr#592@Gitee
* 【core 】 Snowflake支持sequence使用随机数issue#I51EJY@Gitee
* 【core 】 JarClassLoader增加构造pr#593@Gitee
* 【core 】 增加Pid以便获取单例pid
* 【core 】 Img增加全覆盖水印pressTextFullpr#595@Gitee
* 【core 】 ByteUtil.numberToBytes增加Byte判断issue#2252@Github
* 【core 】 CopyOptions添加converter可以自定义非全局类型转换
* 【core 】 添加了设置从绝对路径加载数据库配置文件的功能pr#2253@Github
### 🐞Bug修复
* 【core 】 修复UserAgentUtil识别Linux出错issue#I50YGY@Gitee
* 【poi 】 修复ExcelWriter.getDisposition方法生成错误issue#2239@Github
* 【core 】 修复UrlBuilder重复编码的问题issue#2243@Github
* 【http 】 修复HttpRequest中urlQuery处理get请求参数的时候会导致空指针异常pr#2248@Github
* 【core 】 修复SimpleCache在get时未使用读锁可能导致的问题
* 【aop 】 修复JdkInterceptor before 方法拦截 return false 仍然执行了 after 的拦截问题issue#I5237G@Gitee
-------------------------------------------------------------------------------------------------------------
# 5.8.0.M2 (2022-04-02)
### ❌不兼容特性
* 【extra 】 【可能兼容问题】BeanCopierCache的key结构变更
* 【http 】 【可能兼容问题】HttpInterceptor增加泛型标识HttpRequest中配置汇总于HttpConfig
* 【core 】 【可能兼容问题】UrlQuery.addQuery参数2从String变更为Object
* 【core 】 【可能兼容问题】WorkbookUtil.createBook实现改为WorkbookFactory.create
### 🐣新特性
* 【core 】 MapUtil增加entry、ofEntries方法
* 【core 】 ZipWriter增加add方法重载
* 【core 】 IterUtil增加filtered增加FilterIterissue#2228
* 【core 】 增加NodeListIter、ResettableIter
* 【crypto 】 HmacAlgorithm增加SM4CMACissue#2206@Github
* 【http 】 增加HttpConfig响应支持拦截issue#2217@Github
* 【core 】 增加BlockPolicyThreadUtil增加newFixedExecutor方法pr#2231@Github
* 【crypto 】 BCMacEngine、Mac、CBCBlockCipherMacEngine、SM4MacEngineissue#2206@Github
### 🐞Bug修复
* 【core 】 IdcardUtil#getCityCodeByIdCard位数问题issue#2224@Github
* 【core 】 修复urlWithParamIfGet函数逻辑问题issue#I50IUD@Gitee
* 【core 】 修复IoUtil.readBytes限制长度读取问题issue#2230@Github
* 【http 】 修复HttpRequest中编码对URL无效的问题issue#I50NHQ@Gitee
* 【poi 】 修复读取excel抛NPE错误pr#2234@Github
-------------------------------------------------------------------------------------------------------------
# 5.8.0.M1 (2022-03-28)
### ❌不兼容特性
* 【db 】 【不向下兼容 】增加MongoDB4.x支持返回MongoClient变更pr#568@Gitee
* 【json 】 【可能兼容问题】修改JSONObject结构继承自MapWrapper
* 【core 】 【可能兼容问题】BeanCopier重构新建XXXCopier删除XXXValueProvider
* 【core 】 【可能兼容问题】URLEncoder废弃URLEncoderUtil使用RFC3986
* 【core 】 【可能兼容问题】Base32分离编码和解码以便减少数据加载支持Hex模式
* 【core 】 【可能兼容问题】Base58分离编码和解码
* 【core 】 【可能兼容问题】Base62分离编码和解码增加inverted模式支持
* 【core 】 【兼容问题 】PunyCode参数由String改为Charsequence
* 【cron 】 【可能兼容问题】SimpleValueParser改名为AbsValueParser改为abstract
* 【poi 】 【可能兼容问题】ExcelUtil.getBigWriter返回值改为BigExcelWriter
* 【core 】 【可能兼容问题】Opt.ofEmptyAble参数由List改为Collection子类pr#580@Gitee
* 【json 】 【可能兼容问题】JSON转Bean时使用JSON本身的相关设置而非默认issue#2212@Github
* 【json 】 【可能兼容问题】JSONConfig中isOrder废弃默认全部有序
### 🐣新特性
* 【http 】 HttpRequest.form采用TableMap方式issue#I4W427@Gitee
* 【core 】 AnnotationUtil增加getAnnotationAlias方法pr#554@Gitee
* 【core 】 FileUtil.extName增加对tar.gz特殊处理issue#I4W5FS@Gitee
* 【crypto 】 增加XXTEA实现issue#I4WH2X@Gitee
* 【core 】 增加Table实现issue#2179@Github
* 【core 】 增加UniqueKeySetissue#I4WUWR@Gitee
* 【core 】 阿拉伯数字转换成中文对发票票面金额转换的扩展pr#570@Gitee
* 【core 】 ArrayUtil增加replace方法pr#570@Gitee
* 【core 】 CsvReadConfig增加自定义标题行行号issue#2180@Github
* 【core 】 FileAppender优化初始List大小pr#2197@Github
* 【core 】 Base32增加pad支持pr#2195@Github
* 【core 】 Dict增加setFields方法pr#578@Gitee
* 【db 】 新加db.meta的索引相关接口pr#563@Gitee
* 【db 】 Oracle中Column#typeName后的长度去掉pr#563@Gitee
* 【poi 】 优化ExcelReader采用只读模式pr#2204@Gitee
* 【poi 】 优化ExcelBase将alias放入
* 【poi 】 优化ExcelBase将alias放入
* 【core 】 改进StrUtil#startWith、endWith性能
* 【cron 】 增加CronPatternParser、MatcherTable
* 【http 】 GlobalHeaders增加系统属性allowUnsafeServerCertChange、allowUnsafeRenegotiation
* 【http 】 UserAgentUtil 解析增加MiUI/XiaoMi浏览器判断逻辑pr#581@Gitee
* 【core 】 FileAppender添加锁构造pr#2211@Github
* 【poi 】 ExcelReader增加构造pr#2213@Github
* 【core 】 MapUtil提供change函数EnumUtil提供getBy函数通过lambda进行枚举字段映射pr#583@Gitee
* 【core 】 CompareUtil增加comparingIndexedpr#585@Gitee
* 【db 】 DruidDataSource构建时支持自定义参数issue#I4ZKCW@Gitee
* 【poi 】 ExcelWriter增加addImg重载issue#2218@Github
* 【bloomFilter】 增加FuncFilter
* 【http 】 增加GlobalInterceptorissue#2217
### 🐞Bug修复
* 【core 】 修复ObjectUtil.hasNull传入null返回true的问题pr#555@Gitee
* 【core 】 修复NumberConverter对数字转换的问题issue#I4WPF4@Gitee
* 【core 】 修复ReflectUtil.getMethods获取接口方法问题issue#I4WUWR@Gitee
* 【core 】 修复NamingCase中大写转换问题pr#572@Gitee
* 【http 】 修复GET重定向时携带参数问题issue#2189@Github
* 【core 】 修复FileUtil、FileCopier相对路径获取父路径错误问题pr#2188@Github
* 【core 】 修复CopyOptions中fieldNameEditor无效问题issue#2202@Github
* 【json 】 修复JSON对Map.Entry的解析问题
* 【core 】 修复MapConverter中map与map转换兼容问题
* 【poi 】 解决sax读取时POI-5.2.x兼容性问题
* 【core 】 修复判断两段时间区间交集问题pr#2210@Github
* 【http 】 修复标签误删问题issue#I4Z7BV@Gitee
* 【core 】 修复Win下文件名带*问题pr#584@Gitee
* 【core 】 FileUtil.getMimeType增加rar、7z支持issue#I4ZBN0@Gitee
* 【json 】 JSON修复transient设置无效问题issue#2212@Github
* 【core 】 修复IterUtil.getElementType获取结果为null的问题issue#2222@Github
* 【core 】 修复农历转公历在闰月时错误issue#I4ZSGJ@Gitee
# 5.7.x 或更早版本
* [https://gitee.com/dromara/hutool/blob/v5-master/CHANGELOG_5.0-5.7.md](https://gitee.com/dromara/hutool/blob/v5-master/CHANGELOG_5.0-5.7.md)