All notable changes to this project will be documented in this file.
- none
- none
- 修改
KEncr.AuthCode
,返回结果增加error
- none
- none
- 修改darwin的
KOS.GetBiosInfo
,返回空信息,因为苹果系统无BIOS.
- 修改一些单元测试和注释
- none
- none
- none
- 修改
KTime.Str2Timestruct
,将format
参数改为option
,以支持UTC和本地时区 - 修改
KTime.Str2Timestamp
,将format
参数改为option
,以支持UTC和本地时区 - 修改
KTime.IsDate2time
,增加参数option
,以支持UTC和本地时区
- none
- none
- 修复
isUrl
,字符串是否URL - 修复
KStr.RemoveBefore
,移除before之前的字符串 - 修复
KStr.RemoveAfter
,移除after之后的字符串
- 优化
KFile.Pathinfo
,获取文件路径的信息
- none
- 新增
KTime.FormatDuration
,格式化时长为字符串
- none
- none
- none
- none
- 修改
KFile.Pathinfo
,支持URL
- none
- none
- none
- none
- 修改
KArr.CopyStruct
,支持嵌套结构体
- none
- none
- none
- 修改
KArr.CopyStruct
,返回值类型为error
- none
- none
- none
- 修改
KStr.PasswordSafeLevel
,先检查是否弱密码
- none
- none
- none
github.com/StackExchange/wmi
不再维护,替换为github.com/yusufpapurcu/wmi
- 更新包依赖
- none
- 新增
LkkNumber.SumInt64
,int64整数求和 - 新增
LkkNumber.SumFloat32
,32位浮点数求和 - 新增
LkkNumber.AverageInt64
,对int64整数序列求平均值 - 新增
LkkNumber.AverageFloat32
,对32位浮点数序列求平均值
- none
- none
- none
- 新增
LkkNumber.MaxInt64
,int64整数序列求最大值 - 新增
LkkNumber.MaxFloat32
,32位浮点数序列求最大值 - 新增
LkkNumber.MinInt64
,int64整数序列求最小值 - 新增
LkkNumber.MinFloat32
,32位浮点数序列求最小值
- none
- none
- none
- none
- none
- 修改
LkkString.IsBase64Image
,增加返回扩展名
- none
- 新增
KOS.DownloadFile
,文件下载
- none
- none
- none
- 新增
KStr.StrOffset
,字符串整体偏移
- fix ioutil.ReadAll Deprecated, replace to io.ReadAll
- fix ioutil.ReadFile Deprecated, replace to os.ReadFile
- none
- none
- 新增
LkkFile.Md5Reader
- 新增
LkkFile.ShaXReader
- none
- 重命名
LkkFile.Md5
为LkkFile.Md5File
- 重命名
LkkFile.ShaX
为LkkFile.ShaXFile
- none
- none
- 优化
KFile.CopyFile
- 优化
KFile.FastCopy
- 优化
KFile.CopyDir
- 优化
KFile.DelDir
- 优化
KFile.WriteFile
- 优化
KFile.FileTree
- 优化
KFile.Md5
- 优化
KFile.IsZip
- 优化
KFile.TarGz
- 优化
KFile.UnTarGz
- 优化os_darwin_cgo下
getProcessPathByPid
- 优化os_darwin_cgo下
LkkOS.CpuUsage
- 优化os_linux下
getPidByInode
- 优化os_linux下
LkkOS.Uptime
- 优化os_windows下
LkkOS.MemoryUsage
- 优化os_windows下
LkkOS.CpuUsage
- 优化os_windows下
LkkOS.DiskUsage
- 优化os_windows下
LkkOS.Uptime
- 优化os_windows下
LkkOS.GetBiosInfo
- 优化os_windows下
LkkOS.GetBoardInfo
- 优化os_windows下
LkkOS.GetCpuInfo
- 优化os_windows下
LkkOS.IsProcessExists
- 优化
isEmpty
- 优化
shaXByte
- 优化
pkcs7UnPadding
- 修改
KFile.CopyLink
,增加cover
文件覆盖参数 - 修改
LkkOS.HomeDir
,不再自行区分windows/unix,使用自带的os.UserHomeDir
- 删除os_darwin下
getPidByPort
- 删除os_windows下
getPidByPort
- none
- 修复
KConv.IsFloat
- none
- none
- none
- 修复
KFile.Touch
,创建文件前检查文件是否存在 - 修复非cgo的darwin下
KOS.GetProcessExecPath
编译失败问题
SystemInfo
系统信息结构体增加SystemArch
字段
- none
- 新增
KStr.PasswordSafeLevel
,检查密码安全等级
- none
- none
- none
- none
- 修复
KStr.MatchEquations
- 优化
LkkEncrypt.aesDecrypt
- none
- none
- none
- rename
KArr.CopyToStruct
toKArr.CopyStruct
- none
- none
- 修改
reflectTypesMap
,获取匿名字段
- none
- none
- 新增
KArr.CopyToStruct
,拷贝结构体
- none
- none
- none
- none
- 优化
KEncr.AuthCode
- none
- none
- 新增
KDbug.Stacks
,获取堆栈信息
- 修改
KDbug.GetCallName
,参数f
支持uintptr
类型
- none
- none
- 新增
KStr.UuidV5
,根据提供的字符,使用sha1生成36位哈希值
- 修改
KStr.UuidV4
,添加version/variant信息
- none
- none
- 新增
KEncr.RsaPrivateEncryptLong
使用RSA私钥加密长文本 - 新增
KEncr.RsaPublicDecryptLong
使用RSA公钥解密长文本
- none
- none
- none
- 新增
KStr.ChunkBytes
将字节切片分割为多个小块 - 新增
KEncr.RsaPublicEncryptLong
使用RSA公钥加密长文本 - 新增
KEncr.RsaPrivateDecryptLong
使用RSA私钥解密长文本
- none
- none
- none
- 新增
KStr.ToRunes
将字符串转为字符切片 - 新增
KConv.ToInterfaces
将变量转为接口切片 - 新增
KDbug.WrapError
错误包裹
- 修改
KStr.IsASCII
根据字符串长度使用不同方法
- 重命名
KStr.IsHexcolor
为IsHexColor
- 重命名
KStr.IsRGBcolor
为IsRgbColor
- 将部分公开变量转为私有
- none
- 新增
IsPointer
检查变量是否指针类型
- none
- none
- none
- none
- 修复
KDbug.DumpPrint
打印多变量问题 - 修改
KStr.Ucwords
因go1.18废弃strings.Title,使用cases.Title代替
- none
- none
- none
- 修复
KEncr.AuthCode
中keyb变化问题
- none
- none
- 新增
KNum.NearLogarithm
,求对数临近值 - 新增
KNum.SplitNaturalNum
,将自然数按底数拆解
- none
- none
- none
- 重构版本,改动太多,懒得整理,就不再一一列出
- 新增
KArr.ArrayIntersect
,求数组交集 - 新增
KArr.DeleteSliceItems
,删除切片多个元素 - 新增
KFile.FormatPath
,格式化路径 - 新增
KNum.IsNaturalRange
,是否自然数数组 - 新增
KNum.Log
,求任意底数的对数
- 修改
KNum.IsNatural
,自然数包含0
- 修改
KArr.ArrayDiff
,增加比较方式参数compareType
,返回字典 - 修改
KFile.FormatDir
,过滤特殊字符 - 修改
KNum.IsNan
,接收任意类型参数 - 修改
KNum.NumSign
,结果类型为int8 - 修改
KNum.Range
,支持生成降序的数组
- none
- none
- none
- 修改
KStr.Chr
,使用rune转换字符码 - 修改
KDbug.CallMethod
错误提示
- none
KStr.Md5Byte
KStr.ShaXByte
- none
- rename
md5Str
tomd5Byte
- rename
shaXStr
toshaXByte
- none
KStr.Serialize
KStr.UnSerialize
KStr.TrimBOM
- none
- none
- none
- none
- none
- 修改
KTime.Str2Timestruct
使用本地时区而非UTC
- none
- none
- none
- 修改
KEncr.Base64Encode
结果类型为[]byte - 修改
KEncr.Base64Decode
参数类型为[]byte - 修改
KEncr.Base64UrlEncode
结果类型为[]byte - 修改
KEncr.Base64UrlDecode
结果类型为[]byte - 修改
KEncr.AuthCode
参数和结果类型为[]byte - 修改
KEncr.EasyEncrypt
参数和结果类型为[]byte - 修改
KEncr.EasyDecrypt
参数和结果类型为[]byte - 修改
KEncr.HmacShaX
结果类型为[]byte
- none
- none
- none
KOS.GetSystemInfo
增加SystemOs
操作系统名称字段
- none
- none
- 修复
KStr.ToCamelCase
将首字母大写的驼峰串(如SayHello->Sayhello)转换错误问题
- none
- none
KNum.AbsInt
- none
- rename
KNum.Abs
toKNum.AbsFloat
- none
KArr.InInt64Slice
KArr.InIntSlice
KArr.InStringSlice
KArr.IsEqualArray
KConv.Byte2Hexs
KConv.Hexs2Byte
KConv.Runes2Bytes
KEncr.AesCBCDecrypt
KEncr.AesCBCEncrypt
KEncr.AesCFBDecrypt
KEncr.AesCFBEncrypt
KEncr.AesCTRDecrypt
KEncr.AesCTREncrypt
KEncr.AesOFBDecrypt
KEncr.AesOFBEncrypt
KEncr.GenerateRsaKeys
KEncr.RsaPrivateDecrypt
KEncr.RsaPrivateEncrypt
KEncr.RsaPublicDecrypt
KEncr.RsaPublicEncrypt
KFile.AppendFile
KFile.GetFileMode
KFile.ReadFirstLine
KFile.ReadLastLine
KNum.Percent
KNum.RoundPlus
KOS.GetBiosInfo
KOS.GetBoardInfo
KOS.GetCpuInfo
KOS.IsProcessExists
KStr.AtWho
KStr.ClearUrlPrefix
KStr.ClearUrlSuffix
KStr.Gravatar
KStr.IsWord
KStr.RemoveEmoji
KStr.UuidV4
KTime.DaysBetween
KTime.EndOfDay
KTime.EndOfMonth
KTime.EndOfWeek
KTime.EndOfYear
KTime.StartOfDay
KTime.StartOfMonth
KTime.StartOfWeek
KTime.StartOfYear
- none
KFile.IsFile
增加文件类型参数LkkFileTypeKFile.WriteFile
增加权限参数permKOS.Getenv
增加默认值参数KStr.Random
移除time.SleepKTime.GetMonthDays
放弃map,直接比较- rename
KOS.GetProcessExeByPid
toKOS.GetProcessExecPath
- rename
KTime.Time
toKTime.UnixTime
- none
KStr.Index
KStr.LastIndex
- none
KStr.RemoveBefore
增加参数ignoreCaseKStr.RemoveAfter
增加参数ignoreCaseKStr.StartsWith
增加参数ignoreCase,使用Index代替MbSubstrKStr.EndsWith
增加参数ignoreCase,使用LastIndex代替MbSubstr
- none
- 增加常量
DYNAMIC_KEY_LEN
动态密钥长度
KEncr.AuthCode
修复bounds out of range错误
KEncr.AuthCode
动态密钥长度改为8KEncr.EasyEncrypt
动态密钥长度改为8KEncr.EasyDecrypt
动态密钥长度改为8KTime.CheckDate(month, day, year int)
toCheckDate(year, month, day int)
KNum.ByteFormat
增加'delimiter'参数,为数字和单位间的分隔符
- none
KArr.JoinInts
KArr.JoinStrings
KArr.Unique64Ints
KArr.UniqueInts
KArr.UniqueStrings
KConv.ToBool
KConv.IsNil
KDbug.CallMethod
KDbug.GetFuncDir
KDbug.GetFuncFile
KDbug.GetFuncPackage
KDbug.GetMethod
KDbug.HasMethod
KFile.CountLines
KFile.IsZip
KFile.ReadInArray
KFile.UnZip
KFile.Zip
KNum.Average
KNum.AverageFloat64
KNum.AverageInt
KNum.FloatEqual
KNum.GeoDistance
KNum.MaxFloat64
KNum.MaxInt
KNum.RandFloat64
KNum.RandInt64
KNum:Sum
KNum:SumFloat64
KNum:SumInt
KOS.ForceGC
KOS.GetPidByPort
KOS.GetProcessExeByPid
KOS.TriggerGC
KStr.CountWords
KStr.EndsWith
KStr.Img2Base64
KStr.IsBlank
KStr.IsEmpty
KStr.IsLower
KStr.IsMd5
KStr.IsSha1
KStr.IsSha256
KStr.IsSha512
KStr.IsUpper
KStr.Jsonp2Json
KStr.StartsWith
KStr.ToKebabCase
KStr.ToSnakeCase
KTime.Day
KTime.Hour
KTime.Minute
KTime.Month
KTime.Second
KTime.Str2Timestruct
KTime.Year
KStr.Trim
, 当输入"0"时,结果为空的BUG.
KArr.Implode
, 增加对map的处理.KEncr.EasyDecrypt
, 改进循环.KEncr.EasyEncrypt
, 改进循环.KNum.Max
, 接受任意类型的参数.KNum.Min
, 接受任意类型的参数.KNum.Sum
, 只对数值类型求和.KOS.Pwd
, 弃用os.Args[0],改用os.Executable.KStr.IsASCII
, 弃用正则判断.KStr.IsEmail
, 去掉邮箱是否真实存在的检查.KStr.MbSubstr
, 允许参数start/length为负数.KStr.Substr
, 允许参数start/length为负数.- rename
KArr.ArraySearchMutilItem
toArraySearchMutil
- rename
KArr.MapMerge
toMergeMap
- rename
KArr.SliceMerge
toMergeSlice
- rename
KConv.Bin2dec
toBin2Dec
- rename
KConv.Bin2hex
toBin2Hex
- rename
KConv.ByteToFloat64
toByte2Float64
- rename
KConv.ByteToInt64
toByte2Int64
- rename
KConv.BytesSlice2Str
toBytes2Str
- rename
KConv.Dec2bin
toDec2Bin
- rename
KConv.Dec2hex
toDec2Hex
- rename
KConv.Dec2oct
toDec2Oct
- rename
KConv.Hex2bin
toHex2Bin
- rename
KConv.Hex2dec
toHex2Dec
- rename
KConv.Ip2long
toIp2Long
- rename
KConv.Long2ip
toLong2Ip
- rename
KConv.Oct2dec
toOct2Dec
- rename
KConv.Str2ByteSlice
toStr2Bytes
- rename
KConv.StrictStr2Float
toStr2FloatStrict
- rename
KConv.StrictStr2Int
toStr2IntStrict
- rename
KConv.StrictStr2Uint
toStr2UintStrict
- rename
KFile.Filemtime
toGetModTime
- rename
KFile.GetContents
toReadFile
- rename
KFile.PutContents
toWriteFile
- rename
KStr.CamelName
toToCamelCase
- rename
KStr.LowerCaseFirstWords
toLcwords
- rename
KStr.StrShuffle
toShuffle
- rename
KStr.Strrev
toReverse
- rename
KStr.UpperCaseFirstWords
toUcwords
- rename
KTime.Strtotime
toStr2Timestamp
- remove
KConv.Int2Bool
--end of file--