Releases: nabbar/golib
Releases · nabbar/golib
v1.17.2
Package IOUtils/BufferReadCloser:
- refactor package to allow closer for bytes.Buffer, bufio.Reader, bufio.Writer, bufio.ReadWriter
- implement ReadFrom, WriterTo, StringWriter, ReadRune, ReadByte, WriteByte
- allow specify a custom close function, called in close statement
- add NewBuffer (New declare as deprecated), NewReader, NewWriter, NewReadWriter to each types bytes / bufio
- remove call of Reset in close for ReadWriter: ambigous function (ambigous in bufio struct)
Package Static:
- replace BufferReadCloser New function to NewBuffer
Other:
- bump dependencies
Full Changelog:
- since v1.16.0: v1.16.0...v1.17.2
- since v1.16.1: v1.16.1...v1.17.2
- since v1.16.2: v1.16.2...v1.17.2
- since v1.17.0: v1.17.0...v1.17.2
- since v1.17.1: v1.17.1...v1.17.2
v1.17.1
Package Errors:
- fix compatiblity with goroot/src/errors packages (add capabilities of Unwrap interfaces)
- fix HasCode function: add recursive capabilities
Full Changelog:
- since v1.16.0: v1.16.0...v1.17.1
- since v1.16.1: v1.16.1...v1.17.1
- since v1.16.2: v1.16.2...v1.17.1
- since v1.17.0: v1.17.0...v1.17.1
v1.17.0
Package PID Controller:
- Add package to calculate range of value for Progressive Integrate Derivative
Package AWS:
- Bump dependencies aws sdk go v2 with checksum calulation when supported by default
- Add function in config interface to allow changing checksum calculation
- Set checksum calculation as 'when required' with custom config
- Set checksum calcultation as 'when supported' with aws config
- Fix anonymousCredential with retrieve following bump of aws sdk
Package AWS/Pusher:
- Fix defer called before triggered
- Fix info called without data when loaded source is closed
Package Duration:
- Add function to parse float64 to Duration
- Add function to return a PID Duration range from another given duration
- Add function to return a PID Duration range to another given duration
- RangeFrom / RangeTo: truncate second to not save lower than second in resulted range
Package Ldap:
- Add features to filter multiple group entries
Package Cluster / NutsDB:
- Removing package cluster & nutsdb (+ test) in waiting stabilisation of dependencies
- Adding old source code in tarball file
Package Retro
- Add new package retro designed to support backward-compatible models through semantic versioning
- Use a new struct field tag, retro, which manages the serialization and deserialization of model fields based on specified versions
- Allow working with json, yaml, and toml formats and dynamically marshals or unmarshals model data
Package Archive/Helper
- Adding package to compress/uncompress with reader or writer
- Refactor to allowing to use same source of io as result: io.reader or io.writer
- Optimize code & buf to limit mem use
- Rework variable to be thread safe
Package Archive/Compress
- Add function DetectOnly to detect algo and return an updated reader but not the decompressor reader
- Update function Detect to use DetectOnly to limit duplication code
Package Certificates:
- Rework package to allow convert config to model and retrive config from model
- Add sub package to manage cipher, curves, auth client, tls version, certificates, root ca...
- Add some small test (can be expande to having more coverage)
- Add old config to allow retro compatibility
- Add new type function to retrieve a tls root ca cert instead of a slice of string to get root ca
- Fix bug with cert type marshall/unmarshall
- Optimize some code
Package HTTPCli:
- Fix default DNS Mapper
- Fix non closing sub goroutine
- Update code following change in certificates
- Optimze global DNS Mapper
Package HTTPCli/DNS-Mapper:
- Change request function of Root CA with function of root ca cert instance
- Add function to return a root ca cert from a function that return a slice of root ca string
- Update code following change in certificates
Package HTTPServer:
- Update code following change in certificates
Package Config/Components:
- Update code following change in certificates
- HTTPCli: Bump sub package of certificate, httpcli
- HTTPCli: Adjust code following bump
- HTTPCli: Change request function of Root CA with function of root ca cert instance
- HTTPCli: Add function to return a root ca cert from a function that return a slice of root ca string
- Tls: Change request function of Root CA with function of root ca cert instance
- Tls: Add function to return a root ca cert from a function that return a slice of root ca string
Package FTPClient:
- Update code following change in certificates
Package Nats:
- Update code following change in certificates
Package IOUtils/mapCloser:
- Fix bug with mapcloser not stopped
- Optimize code & goroutine
Package Logger:
- Add check on io interface to prevent closing instance and allowing gracefull closing
- Rework mapCloser call
- Optimize mapClaoser managment
Package Request:
- Rework error managment
- Using []byte instead of buffer to read response body
- Add free capability
- Optimize memory consumption
Package Socket / Server:
- Add filtering error capability
- Add params to specify a function called on each new connection and before using the connection
- The new function param allow to update the network incomming connection (like buffer, deadline...)
- Rework some useless atomic to direct value to optimize code
Package Socket/Delim:
- Rework to optimize memory & variable use
- Remove capabilities of update the instance when running, prefert recreate new one if necessary
Other:
- Bump dependencies
- Removing experiment dependency when using slices to root/slices package
- Fix minor bugs
Pull Request Merged
- golib retro sub pkg by @sabouaram in #186
- adding a PR template to golib by @sabouaram in #187
- golib-issue-templates by @sabouaram in #189
- Package Ldap - Add features to filter multiple group entries by @nabbar in #195
- Package Archive: add Helper & Compress DetectOnly by @nabbar in #199
Full Changelog:
- since v1.16.0: v1.16.0...v1.17.0
- since v1.16.1: v1.16.1...v1.17.0
- since v1.16.2: v1.16.2...v1.17.0
v1.16.2
Package Socket
- Client: fix TLS config for client, need TLS Server Name to be valid
Full Changelog
v1.16.1
Package HTTPServer
- replace time.duration / os.FileMode type by golib package duration & file perms to allow parsing string in json
Package Logger
- replace time.duration / os.FileMode type by golib package duration & file perms to allow parsing string in json
- fix json bug in default options
- add missing options in default json
Package Monitor
- replace time.duration / os.FileMode type by golib package duration & file perms to allow parsing string in json
Other
- bump dependencies
Full Changelog
v1.16.0...v1.16.1
v1.15.4...v1.16.1
v1.15.3...v1.16.1
v1.15.2...v1.16.1
v1.15.1...v1.16.1
v1.15.0...v1.16.1
v1.16.0
Package atomic:
- new package to simplify usage of atomic.Value & sync map by using generic struct/interface with cast
- add generic function to cast model
Package Duration:
- fix bug with 0s duration
Package aws:
- add new sub package pusher: pusher is an helper who's allow to push
single put object or multipart upload and implement io.writer &
io.readFrom interface
Other:
- bump dependencies
Full Changelog: v1.15.4...v1.16.0
v1.15.4
Package Request:
- fix bug with retryer and io reader body (body was not resend on retryed request)
- remove mutex and use atomic on potential race field
- simplify & optimize some code
Full Changelog: v1.15.3...v1.15.4
v1.15.3
Package Duration
- fix days: using ceil instead of floor
- add tuncate function for micro, milli, seconds, minutes, hours and days
Other
- bump dependencies
Full Changelog: v1.15.2...v1.15.3
v1.15.2
Package Semaphore:
- Fix issue #182
Package Encoding/RandReader:
- optimize code
- remplace some pointer by atomic to prevent RACE
Package AWS:
- fix double import with different tag for validator in config model
- apply MR about fix on bucket validator to config AWS model
Other:
- bump dependencies
New Contributors
- @ValentinMorel made their first contribution in #184
Full Changelog: v1.15.1...v1.15.2
v1.15.1
Package Semaphore
- add capabilities to create semaphore with more weighted thant physical thread
- to limit thread to physical thread use SetSimultaneous function
- add capabilites to use unlimited sync process (waitgroup)
- update process following
- add subpackage to create good semaphore/waitgroup instance
Package Encoding:
- add sub package randRead to allow expose random reader from remote source like http request
- add unit test for randReader
Package AWS:
- groups: add new function walk to list and call custom function on each found group
- role: add new function walk to list and call custom function on each found role
- role: add new function to detach all attached policy linked on each found role
- user: add new function walk to list and call custom function on each found user
- user: add new function to detach all attached policy linked on each found user
- policy: add new function walk to list and call custom function on each found policy
- policy: add new function to retrieve all ARN policy who's matching given prefix of not empty