Releases: gookit/goutil
Releases Β· gookit/goutil
v0.7.1
Change Log
Fixed
- π fix: maputil - TryAnyMap convert error on input no-string key map 095d51e
Feature
- β¨ feat: timex - Enhanced ToDuration method to support negative numbers and multiple time. eg: -1.5h, 2d3h, 2hour33min a9069e6
- β¨ feat: fsutil - add new func: NameNoExt get filename without ext 95581b1
- β¨ feat: maputil - add ToL2StringMap: convert map[string]any to map[string]map[string]string 1b4a87b
- β¨ feat: testutil - add StrVarRenderer implements like shell vars renderer 114d773
- β¨ feat: maputil - Data add new method: One, StrOne, StringsOne for try get value by multi key a877c56
- β¨ feat: maputil - add func: FirstKey for get first key string. 922d3cc
- β¨ feat: strutil - add func: IContainsOne, IContainsAll for support ignore-case check string. 6eb1356
- β¨ feat: strutil - add new func: JoinComma quick join strings by comma 3d40ebb
- β¨ feat: maputil - add func: AnyToStrMap for convert any to string-map 6f1a47f
- β¨ feat: maputil - Data add method: BoolOne, AnyMap for get value 721b544
- β¨ feat: maputil - add new type: L2StrMap and add new func: MergeL2StrMap da6c2b0
- β¨ feat: maputil - add new func: SliceToSMap, SliceToMap, SliceToTypeMap 9b99167
- β¨ feat: maputil - SMap add new method: StrOne for get first value by multi keys 993edb6
- β¨ feat: strutil - add new func: IsVarName for check varname string 34194ee
- β¨ feat: sysutil - add new func: ToEnvPATH join strings to PATH string 66d1416
- β¨ feat: sysutil/cmdr - Cmd add new field PrintLine for print show cmdline a14f77b
- β¨ feat: reflects - add func: TryAnyMap for convert any map to string-any map f839da3
- β¨ feat: structs - StructToMap add new options: IgnoreEmpty, UserFunc 001c4da
- β¨ feat: structs - SetValues add new options: BeforeSetFn hook 4a8b758
Update
- π up: env, strutil - Extract the common ENV lines parse method to the internal package 2b5a873
- π up: maputil - rename SMap to StrMap 2caae27
- π up: jsonutil - add new func: DecodeFile bbb7603
- π up: sysutil add const OsName, goutil add func: IfElseFn 65f84e5
Other
- π doc: update and add some docs for structs, testutil, x/finder 4f00e86
- π test: fix the internal ParseEnvLines in some case error e693ecd
- π chore: update import, rename some vars 9e89bd1
- π chore: arrutil - update the ToStrings logic 7847933
- π chore: errorx - add alias method Rf for Rawf 6109707
- π‘ chore: update or fix some func comments 583c720
- π‘ chore: update some comments and code style 7c15564
- β¬οΈ dep: update gh checkout action to v5 b12ec64
- π doc: update and re-generate README docs 18a8667
Full Changelog: v0.7.0...v0.7.1
v0.7.0
Change Log
Refactor
- β»οΈ refactoring: move the encodes package to x/encodes 275d1f4
- β»οΈ refactor: stdio - move goutil/stdio to goutil/x/stdio 1057fb5
- β»οΈ refactor: fmtutil - move goutil/fmtutil to goutil/x/fmtutil e2c8bed
- β»οΈ refactor: clipboard - move goutil/sysutil/clipboard to goutil/x/clipboard c47cf3b
- β»οΈ refactor: finder - move goutil/fsutil/finder to goutil/x/finder 48963af
- β»οΈ refactor: goinfo - move package goutil/goinfo to goutil/x/goinfo 9e28205
Fixed
- π fix: finder - fix finder repeat run error and add more tests ff84828
- fix: termenv - update color detect check on *nix OS 3aba144
- fix: termenv - DetectColorLevel unit test error a619d5a
- fix: termenv - DetectColorLevel unit test error2 16a948d
Feature
- β¨ feat: fsutil - add new util func: PathNoExt 1b36cbd
- β¨ feat: strutil - add new util func: IsInt, IsFloat, IsHttpURL f28e12c
- β¨ feat: fsutil/finder - support find work with concurrency mode 0d05af8
- β¨ feat: cflag - cli app support add global flags 97ce9f4
- β¨ feat: arrutil - add new util func: FirstOr 7dfe0b2
- β¨ feat: envutil - add new util func: MustGet, GetOne ad34b9b
- β¨ feat: structs - Added time parsing function on InitDefaults, SetValues b5f2898
- β¨ feat: reflects - Added time and duration type check and conversion functions 7e5b0c4
- β¨ feat: x/ccolor - add new sub package support ANSI color render cc18ef1
- β¨ feat: testutil - add new env test util: SetOsEnvs, RemoveTmpEnvs d42514a
- β¨ feat: assert - add new assert util: FileExists/FileNotExists, DirExists/DirNotExists acbca15
- β¨ feat: strutil - add new util: Md5Base62, MTimeBase36 0609161
- β¨ feat: termenv - add new sub package: x/termenv for check color support 289707b
- β¨ feat: textutil - add new util func: ParseSimpleINI format contents to a string-map 5ad7251
- β¨ feat: envutil - add new util: SplitText2map, LoadString, LoadText 6325333
- β¨ feat: testutil - add new util: MockHttpServer, RunOnCleanEnv 207e2ed
Update
- β¨ up: fsutil/finder - update some worker logic, optimize concurrent processing 00abc00
- β¨ up: use built in x/ccolor instead gookit/color package 63046e6
- β¨ up: comdef - add some new type or interface definition c17033c
- β¨ up: httpreq - update RespX, read response body to buffer for repeat uses. af68747
- β¨ up: byteutil add new func: Md5Sum, fmtutil add alias func: HumanSize 01b2768
- β¨ up: dump - add new option: MaxElementsNum 6539924
- π up: x/ccolor - use new package x/termenv check color env 05fbe68
- π up: update some sys env util func d22980b
- π up: sysutil/cmdr - update print context and fix workdir set error e5b0158
- β¨ up: move basefn package to the x dir 5bafec6
- β¨ up: move testuitl/fakeobj package to the x dir 57b7410
- π up: update some util and fix some unit test error c0c7593
- π up: update and re-generate README docs ea3a9b3
- π up: add new type Number instead XintOrFloat 24da798
- π up: cli - update cmd line build logic 8bcf999
Other
- build(deps): bump golang.org/x/term from 0.27.0 to 0.28.0 (#210) 923cb8b
- build(deps): bump golang.org/x/sys from 0.29.0 to 0.30.0 (#212) d978612
- build(deps): bump golang.org/x/sync from 0.10.0 to 0.11.0 (#211) 7642483
- build(deps): bump golang.org/x/text from 0.21.0 to 0.22.0 (#213) 5270f1d
- build(deps): bump golang.org/x/term from 0.28.0 to 0.29.0 (#214) 93c1e39
- build(deps): bump golang.org/x/sys from 0.30.0 to 0.31.0 (#216) 0543d03
- build(deps): bump golang.org/x/sync from 0.11.0 to 0.12.0 (#215) f00496a
- build(deps): bump golang.org/x/term from 0.29.0 to 0.30.0 (#218) 7c4c6e0
- build(deps): bump golang.org/x/text from 0.22.0 to 0.23.0 (#217) 42892a4
- β¬οΈ dep: down some deps version to support go<1.23 9c54e2c
- β test: comdef - add more func test cases d34ee22
- β test: syncs - add more func test cases a23fb81
- π chore: fsutil - update some debug logs for finder 3be227e
- β test: add more unit test cases for arr,map,str,sys utils a2303f0
- β test: add more unit test cases for cflag,assert,timex 6bbb455
- π· test: fsutil/finder - add more test cases 9918541
- π· ci: add run unit test on go>1.21 c661585
- π doc: update some docs and comments b44963d
- π chore: update some code style and pkg import f53908d
- β test: update and fix some unit tests error e2b6b2a
- β dep: remove depends on the xo/terminfo package 7b4f3e8
- π test: x/termenv - fix ci test error on macOS 9290735
- π test: dump, x/termenv - fix ci test error on ubuntu os ca8fe91
- π test: x/ccolor - fix ci test error for TestApplyTag 5f8ec75
- π doc: update some docs and re-generate README 14cf523
- β test: ccolor,te...
v0.6.18
Change Log
Fixed
- β¨ fix: cflag - get app name error, path.Base not support windows a2decab
- π fix: sys - UserConfigDir path build error f308913
- π fix: sys - UserXXDir func test error on windows 83393ca
Feature
- β¨ feat: cflag - add command support by struct cflag.Cmd 21b0dcd
Update
- β¨ up: cflag - app add new hook BeforeRun and call os.Exit on run error e0591f5
- π up: cflag - app hook BeforeRun add new param c97c8d0
- π up: sysutil - ShellExec support handle use cmd,pwsh shell on Windows c1f379f
- π up: sysutil - SearchPath will limit ext search on windows e7da787
- π up: sysutil - modify the exec command logic, always return combined output 49bc6ed
- β¨ up: cflag - app add new hook AfterRun on cmd run after aef1d43
- β¨ up: strutil - add new function: SplitByWhitespace 342cd12
- π up: all - use path/filepath instead of path for support Windows ba0623b
- π up: mathutil - convert string to int, int64 support float string ebc89cd
- π up: fsutil - add new func: JoinPaths3, update some tests 1ef5549
- π up: sysutil - add new OSVersionInfo for parse Windows version info f2ce64c
- π up: cflag - print error stack on debug mode eb4fc22
- π up: sys/process - add new func: ExistsByName, StopByName cd830b9
- π up: sys - add new func: IsAdmin, enhance func: UserDir, UserConfigDir 57a5103
Other
- build(deps): bump golang.org/x/text from 0.18.0 to 0.19.0 (#196) 1e250bf
- build(deps): bump golang.org/x/sys from 0.25.0 to 0.26.0 (#198) a74c379
- build(deps): bump golang.org/x/term from 0.24.0 to 0.25.0 (#197) b7cc07b
- β¨ enhanced: dump - support for parse alias type of time.Time. close #200 e959274
- Added new OrElseNilSafe to handle nil pointers for optional strings. (#199) c5e194a
- build(deps): bump golang.org/x/term from 0.25.0 to 0.27.0 (#208) 2ad2195
- build(deps): bump golang.org/x/sync from 0.8.0 to 0.10.0 (#206) 8e25dc1
- build(deps): bump golang.org/x/text from 0.19.0 to 0.21.0 (#207) 7ae8ce4
v0.6.17
Change Log
Fixed
- fix: dumper.printRValue panic when unexported fields in the structure are of type time.Time; (#183) 4143c5b
- π fix: cflag - not add NewLine on each option description f1ad3a6
- π fix: structs - fix TryToMap panic on handle invalid field value ebc746c
- π fix: structs - InitDefaults: can't set slice to array. close #172 c341f68
Other
- build(deps): bump morphy2k/revive-action from 2.5.7 to 2.5.10 (#191) 3c4153f
- build(deps): bump golang.org/x/term from 0.22.0 to 0.23.0 (#188) 5c4823d
- ci: remote the morphy2k/revive-action d81967d
- build(deps): bump golang.org/x/sys from 0.23.0 to 0.25.0 (#193) 717b4f5
- build(deps): bump golang.org/x/text from 0.16.0 to 0.18.0 (#194) 0a4c580
- build(deps): bump golang.org/x/term from 0.23.0 to 0.24.0 (#195) b511ebd
v0.6.16
Change Log
Fixed
- π fix: fs - ToAbsPath if input is empty will return current work dir deb03c0
Feature
- β¨ feat: math - add generic func Abs 45cdda2
- β¨ feat: map - add new func: TypedKeys, TypedValues, EachTypedMap for get typed key or value from map dc3c50a
- β¨ feat: assert - add new func: StrNotContains for check string value dce0f0b
- β¨ feat: IsEmptyReal and IsZeroReal method (#174) f480138
- β¨ feat: support convert float string to int (#180) 5bdbe2a
Update
- π up: test,base - update some test and base func ac5dfa1
- π up: rename the reflects.IsValidatePtr to reflects.IsValidPtr 8b32a51
- π up: str - random string gen split non-win and windows implement 5f16ce7
- π up: assert - add new helper func: ContainsElems 1c08e6b
- π up: fsutil add const and update the FindInDir() 0f525a0
Other
- build(deps): bump morphy2k/revive-action from 2.5.4 to 2.5.6 (#152) 73a2aba
- build(deps): bump WillAbides/setup-go-faster from 1.13.0 to 1.14.0 (#153) 4ea333f
- π¨ style: update and fix some code style problem 66e926c
- build(deps): bump morphy2k/revive-action from 2.5.6 to 2.5.7 (#160) 08ec3bd
- Add new function reflect.IsValidatePtr (#163) 5c01479
- build(deps): bump softprops/action-gh-release from 1 to 2 (#165) 479e259
- π chore: update some deps to latest, and update some type comments 7c5136a
- β ci: fix ci test error and add test on go1.22 9203a60
- build(deps): bump golang.org/x/text from 0.14.0 to 0.15.0 (#171) 03a1013
- build(deps): bump golang.org/x/sys from 0.18.0 to 0.20.0 (#169) 4978a3a
- build(deps): bump golang.org/x/term from 0.18.0 to 0.20.0 (#170) 68ce124
- build(deps): bump golang.org/x/sync from 0.6.0 to 0.7.0 (#166) aec44b2
- support default env prefix (#178) 43e6c53
- β¬οΈ dep: upgrade golang.org/x deps to latest version bfe7659
v0.6.15
Change Log
Fixed
- π fix: strutil - fix random method unit test error 2a189eb
- π fix: support use JSON as env default value on parse struct. see issues #135 79a8767
- π fix: envutil - parse env var check error 300ee26
- π fix: conv - fix some to unit convert tests error 58c5080
Feature
- β¨ feat: math - add Uint64, ToUint64 and related util func 8373e84
- β¨ feat: math,str - move the common ToStringWith func to internal package f9a9690
- β¨ feat: dump - special handle for time.Time type display 1d0e7a0
- β¨ feat: enhance the convert func, support handle ptr type value 3ace818
Update
- π up: map - add some new method for Map, SMap data 678218d
- π up: maputil - fix a method name error, add tests for MergeMultiSMap e0bbc86
- β»οΈ up: math - update all value convert to other type func logic, support more options a1e842e
- π up: structs - update the SetValues logic will continue on set error dd72232
- π up: reflects,internal - update some internal and reflects util func 154fd5b
Other
- build(deps): bump morphy2k/revive-action from 2.5.3 to 2.5.4 (#136) b8698a4
- dep: upgrade some deps to latest version f34c186
- build(deps): bump WillAbides/setup-go-faster from 1.12.0 to 1.13.0 (#145) bf7f993
- build(deps): bump golang.org/x/term from 0.13.0 to 0.15.0 (#144) b73b8e9
- Modify struct field setting logic. (#138) 4eb9721
- π doc: add package comments for some subpackage a49dc1c
- π ci: math, str - fix some convert tests error 4275d2c
- π ci: math - fix run ci tests error on go1.19 a6a8d0e
- π doc: update and re-generate README docs 71e9b89
- build(deps): bump github/codeql-action from 2 to 3 (#147) d397d97
- π doc: re-generate new README and fix some code style 9ef6bd0
v0.6.14
v0.6.13
Change Log
Fixed
- π fix: testutil - lite tpl render var parse error on contains empty format 3e41471
- π fix: fsutil - fix unit tests error for MustOpenFile be917ac
Feature
- β¨ feat: jsonutil - add new func MustPretty, MustString and add more unit tests 6eea491
- β¨ feat: cflag - add new built in ext type SafeFuncVar db5b927
- β¨ feat: fs/finder - support quick config finder by string rules da08abc
- β¨ feat: goutil - add new convert func ConvTo, ToKind, SafeConv for quick conv value type c8acbff
- β¨ feat: str,byte - add new func: ShortMd5 and update byteutil.Md5 logic c03d243
- β¨ feat: strutil - add new base conv func: BaseConv, Base10Conv, BaseConvByTpl b15c388
- β¨ feat: reflects - add quick call func by reflection: Call, Call2, SafeCall 4c2531f
- β¨ feat: syncs - move goutil.ErrGroup to sub pkg syncs.ErrGroup 980e23d
- β¨ feat: reflects - update func call logic, support more type auto convert 5b149e5
- β¨ feat: textutil - add StrTemplate for quick render template string 8f8f7ee
- β¨ feat: netutil - add new util func: HostIP, FreePort e884faa
- β¨ feat: jsonutil - add new util func: IsArray, IsObject for quick check json string 5644d92
- β¨ feat: encodx - add sub package, add some files from strutil pkg bd472a7
- β¨ feat: fsutil - add new func: FilePathInDirs a2257a1
- [feature] add func.saferun, automatically recover error when func panic (#123) 91d8264
- β¨ feat: varexpr - add new internal package varexpr for parse ENV var d829299
Update
- π update: testutil - update some util func add more unit test cases 28271fb
- π update: strutil - update the Repeat() handle logic on times < 1 3dfc858
- π update: netutil - update add new func ToKindWithFunc() and add some new consts cac36d3
- π up: timex - add new func NowDate() for quick format time use date template ce9d51e
- π up: reflects - update some util func and test 362bdcb
- π up: arr,test - update field name for testutil.EchoReply, add alias func arrutil.StringsToAnys b2889bb
- π up: strutil - update some decode and encode func logic 983446a
- π up: strutil - update some rand func logic, use custom rand instance 3e711a4
- π up: strutil - update some encode and id generate logic 1193638
- π up: update some type name, up some comments and add more tests 8fea977
- β¨ up: textutil - rename the StrTemplate to LiteTemplate, and update some render logic b6adb71
- π up: strutil - update some string util functions 9723aea
- π up: update some cli and map util functions ff8619f
- π up: rename the new sub package encodx to encodes 5968127
- π up: update some array, str and encode util func tests 8119792
- π up: update some for gen random chars da9fd86
Other
- π¨ style: update and fix some code style error f551b33
- β test: all - add more unit test case and update some comments 5b354e6
- π¨ chore: resolve some code style error and update some comments 868b402
- build(deps): bump WillAbides/setup-go-faster from 1.8.0 to 1.9.0 (#114) 4d409fd
- build(deps): bump WillAbides/setup-go-faster from 1.9.0 to 1.9.1 (#118) 23b892c
- build(deps): bump golang.org/x/text from 0.11.0 to 0.12.0 (#117) b06f9e1
- build(deps): bump golang.org/x/term from 0.10.0 to 0.11.0 (#116) 35503c4
- build(deps): bump morphy2k/revive-action from 2.5.2 to 2.5.3 (#122) 7888c03
- build(deps): bump actions/checkout from 3 to 4 (#127) 844ad99
- build(deps): bump WillAbides/setup-go-faster from 1.9.1 to 1.10.1 (#120) fe36eb0
- π‘ chore: update some func and method comments b53b4e7
- β¬οΈ dep: update some deps to latest version 86c933a
- β test: update and fix all error tests 9415ac3
- build(deps): bump WillAbides/setup-go-faster from 1.10.1 to 1.11.0 (#128) f2b6edc
- π· ci: remove ci test on go1.18, add on go1.21 9bbcec2
- π doc: re-generate README docs, update some doc template dc1143d
- build(deps): bump WillAbides/setup-go-faster from 1.11.0 to 1.12.0 (#129) 858dcf4
- build(deps): bump golang.org/x/sync from 0.3.0 to 0.4.0 (#131) 385326e
- build(deps): bump golang.org/x/sys from 0.12.0 to 0.13.0 (#130) e471197
- build(deps): bump golang.org/x/term from 0.12.0 to 0.13.0 (#132) 081b02c
- π doc: update and re-generate README docs a279f66
v0.6.12
Change Log
Refactor
- π₯ refactor: rename the package stdutil to goinfo, and remove some repeated util func 592b2a1
- π₯ refactor: basefn - mv the HowLongAgo, DataSize to pkg mathutil 9e581e1
- β»οΈ refactor: arrutil - upgrade collection func to generics: TwowaySearch, Differences, Excepts, Intersects and more 02e9849
Fixed
Feature
- β¨ feat: fsutil - add UpdateContents() and add more unit test cases 73b905b
- β¨ feat: add new pkg: syncs and internal pkg: checkfn 0155b13
- β¨ feat: arrutil - add new util func: JoinTyped, support join any typed slice 8aa12c0
- β¨ feat: byteutil - new util func: ToBytes, SafeBytes, ToBytesWithFunc for conv any to []byte 9c10a51
- β¨ feat: mathutil - add new func: IntOrDefault, UnitOrDefault, FloatOrDefault ... and more for convert with default e906c90
- β¨ feat: fsutil - add new func IsEmptyDir() and add more unit tests 8690507
- β¨ feat: reflects - add new func TypeReal, TypeElem, MakeSliceByElem f8b93a0
- β¨ feat: strutil - add new func StringOrDefault, IntOrDefault, Int64OrDefault, UintOrDefault and more conv funcs 477d4d0
- β¨ feat: strutil - add new func BeforeFirst, AfterFirst, AfterLast split funcs ecbbbc8
- β¨ feat: strutil - add new func BlankOr, ZeroOr for check and return value fbe027e
- β¨ feat: timex - add new func ElapsedNow and update the Elapsed() logic d6222f8
Update
- π up: arrutil - update the ToString and add new func TString() 06b9b37
- βͺ up: arrutil - revert the ToString handle logic c553460
- π update: update some goutil package import, replace pkg name 2040798
- π update: inner - rename internal func comfunc.FormatTplWithArgs to FormatWithArgs 19943b5
- π update: goinfo - move parse go info func to package goinfo from sysutil dd238bb
- π update: errorx - add new func: MustEX, and add more unit tests d9ad4c6
- π update: basefn - add new func PanicErr and update PanicIf logic 7fe7ccd
- β»οΈ update: refactoring the slice item validate logic e5a13ce
- π update: update deps to latest and update some comments and tests 33b57ac
- π update: goinfo, str - update some comments and some tests e834938
Other
- π doc: update and re-generate README docs c7c8f5c
- β test: update and add more tests for arr,cli, errorx package 5c2e10b
- π chore: fix maputil test error and re-generate README docs 5e2d478
- β test: strutil - add more unit cases a0ac609
- β test: arr,reflects - add more unit cases f0dea38
- π chore: update doc gen logic and re-generate README docs a33124d
- β test: strutil, timex fix unit test error 59dd067
Full Changelog: v0.6.11...v0.6.12
v0.6.11
Change Log
Feature
- β¨ feat: fsutil - add some new util func MatchPaths(), MatchFirst() e3b3bfd
- β¨ feat: netutil - add new util func ParseAccept() for parse header Accept ed6c3af
- β¨ feat: arrutil - add new util func IntsToString() and add more test cases 4d52d37
- β¨ feat: cflag - add new ext flag var types: IntVar, StrVar 899294d
- feat: add generic util function SliceHas (#103) b439a24
- β¨ feat: stdio - add some commonly io interface definition 50b5445
- β¨ feat: arrutil - enhance the Ints and Strings and SortedList fe184cf
- β¨ feat: fsutil - add new util func MustSave(), SaveFile() support open options e1e16d5
- β¨ feat: httpreq - add PostJSON() method, update some req build logic 4768e7d
- β¨ feat: timex - add FromNow() and update HowLongAgo logic. issues #108 d075abe
Update
- π up: testutil - add more assertions methods and more fakeobj tests db84b60
- π up: httpreq - add new util func MergeURLValues() d2fc75f
- π up: maputil - deep get value update logic on not found 9765d6d
- π up: reflects,math - update the int value convert handle and add more tests ba4db05
- π up: arrutil - upgrade some util func to generic version, add more tests e083d92
- π up: strutil - add some new method and add more unit tests 7a83b80
- π up: arr,byte - update and add more unit test cases 133da19
- π up: test,map - update some map util func and test utils 4334f37
- π up: go,reflects - add alias func IsZero() for IsEmpty(). issues #107 04a08af
Other
- β test: cli,byte - add more unit test case for util func 5e39500
- β test: structs,cli - add more unit test cases ff6a0db
- π ci: fix ci test build error on go1.18 e28092b
- β test: reflects - add more unit tests for FlatMap(), EachMap() f39f74c
- π¨ fmt: fix some code style for sysutil, dump, testutil package b05e3ed
- β test: cflag,cli,fs - add more unit tests and fix some test error 530d6c5
- β test: envutil,testutil - add more unit tests cases 2536281
- π chore: all - update some comments and test cases 7747e31
- π doc: update and re-generate README docs 877dbd3
- β¬οΈ dep: upgrade golang/x deps to latest version b217736
- β test: add more unit test cases for sys, test, reflects 197c22d
- β test: fsutil - update some util func and add more unit tests 2d7deb4
- β test: maputil - update some util func and add more unit tests 5832f25
New Contributors
Full Changelog: v0.6.10...v0.6.11