chore(deps): bump github.com/shamaton/msgpack/v2 from 2.2.0 to 2.2.2
Bumps [github.com/shamaton/msgpack/v2](https://github.com/shamaton/msgpack) from 2.2.0 to 2.2.2. - [Release notes](https://github.com/shamaton/msgpack/releases) - [Commits](https://github.com/shamaton/msgpack/compare/v2.2.0...v2.2.2) --- updated-dependencies: - dependency-name: github.com/shamaton/msgpack/v2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
This commit is contained in:
committed by
Ralf Haferkamp
parent
54c8567697
commit
b3e5d80306
+15
-6
@@ -28,22 +28,31 @@ func (d *decoder) asBin(offset int, k reflect.Kind) ([]byte, int, error) {
|
||||
if err != nil {
|
||||
return emptyBytes, 0, err
|
||||
}
|
||||
o := offset + int(uint8(l))
|
||||
return d.data[offset:o], o, nil
|
||||
v, offset, err := d.readSizeN(offset, int(uint8(l)))
|
||||
if err != nil {
|
||||
return emptyBytes, 0, err
|
||||
}
|
||||
return v, offset, nil
|
||||
case def.Bin16:
|
||||
bs, offset, err := d.readSize2(offset)
|
||||
o := offset + int(binary.BigEndian.Uint16(bs))
|
||||
if err != nil {
|
||||
return emptyBytes, 0, err
|
||||
}
|
||||
return d.data[offset:o], o, nil
|
||||
v, offset, err := d.readSizeN(offset, int(binary.BigEndian.Uint16(bs)))
|
||||
if err != nil {
|
||||
return emptyBytes, 0, err
|
||||
}
|
||||
return v, offset, nil
|
||||
case def.Bin32:
|
||||
bs, offset, err := d.readSize4(offset)
|
||||
o := offset + int(binary.BigEndian.Uint32(bs))
|
||||
if err != nil {
|
||||
return emptyBytes, 0, err
|
||||
}
|
||||
return d.data[offset:o], o, nil
|
||||
v, offset, err := d.readSizeN(offset, int(binary.BigEndian.Uint32(bs)))
|
||||
if err != nil {
|
||||
return emptyBytes, 0, err
|
||||
}
|
||||
return v, offset, nil
|
||||
}
|
||||
|
||||
return emptyBytes, 0, d.errorTemplate(code, k)
|
||||
|
||||
+4
-2
@@ -7,8 +7,10 @@ import (
|
||||
)
|
||||
|
||||
func (d *decoder) asBool(offset int, k reflect.Kind) (bool, int, error) {
|
||||
code := d.data[offset]
|
||||
offset++
|
||||
code, offset, err := d.readSize1(offset)
|
||||
if err != nil {
|
||||
return false, 0, err
|
||||
}
|
||||
|
||||
switch code {
|
||||
case def.True:
|
||||
|
||||
+2
-2
@@ -58,7 +58,7 @@ func (d *decoder) asComplex64(offset int, k reflect.Kind) (complex64, int, error
|
||||
|
||||
}
|
||||
|
||||
return complex(0, 0), 0, fmt.Errorf("should not reach this line!! code %x decoding %v", code, k)
|
||||
return complex(0, 0), 0, d.errorTemplate(code, k)
|
||||
}
|
||||
|
||||
func (d *decoder) asComplex128(offset int, k reflect.Kind) (complex128, int, error) {
|
||||
@@ -110,5 +110,5 @@ func (d *decoder) asComplex128(offset int, k reflect.Kind) (complex128, int, err
|
||||
|
||||
}
|
||||
|
||||
return complex(0, 0), 0, fmt.Errorf("should not reach this line!! code %x decoding %v", code, k)
|
||||
return complex(0, 0), 0, d.errorTemplate(code, k)
|
||||
}
|
||||
|
||||
+9
-8
@@ -4,6 +4,7 @@ import (
|
||||
"fmt"
|
||||
"reflect"
|
||||
|
||||
"github.com/shamaton/msgpack/v2/def"
|
||||
"github.com/shamaton/msgpack/v2/internal/common"
|
||||
)
|
||||
|
||||
@@ -19,11 +20,11 @@ func Decode(data []byte, v interface{}, asArray bool) error {
|
||||
d := decoder{data: data, asArray: asArray}
|
||||
|
||||
if d.data == nil || len(d.data) < 1 {
|
||||
return fmt.Errorf("data is empty")
|
||||
return def.ErrNoData
|
||||
}
|
||||
rv := reflect.ValueOf(v)
|
||||
if rv.Kind() != reflect.Ptr {
|
||||
return fmt.Errorf("holder must set pointer value. but got: %t", v)
|
||||
return fmt.Errorf("%w. v.(type): %T", def.ErrReceiverNotPointer, v)
|
||||
}
|
||||
|
||||
rv = rv.Elem()
|
||||
@@ -33,7 +34,7 @@ func Decode(data []byte, v interface{}, asArray bool) error {
|
||||
return err
|
||||
}
|
||||
if len(data) != last {
|
||||
return fmt.Errorf("failed deserialization size=%d, last=%d", len(data), last)
|
||||
return fmt.Errorf("%w size=%d, last=%d", def.ErrHasLeftOver, len(data), last)
|
||||
}
|
||||
return err
|
||||
}
|
||||
@@ -191,7 +192,7 @@ func (d *decoder) decode(rv reflect.Value, offset int) (int, error) {
|
||||
return 0, err
|
||||
}
|
||||
if len(bs) > rv.Len() {
|
||||
return 0, fmt.Errorf("%v len is %d, but msgpack has %d elements", rv.Type(), rv.Len(), len(bs))
|
||||
return 0, fmt.Errorf("%v len is %d, but msgpack has %d elements, %w", rv.Type(), rv.Len(), len(bs), def.ErrNotMatchArrayElement)
|
||||
}
|
||||
for i, b := range bs {
|
||||
rv.Index(i).SetUint(uint64(b))
|
||||
@@ -205,7 +206,7 @@ func (d *decoder) decode(rv reflect.Value, offset int) (int, error) {
|
||||
return 0, err
|
||||
}
|
||||
if l > rv.Len() {
|
||||
return 0, fmt.Errorf("%v len is %d, but msgpack has %d elements", rv.Type(), rv.Len(), l)
|
||||
return 0, fmt.Errorf("%v len is %d, but msgpack has %d elements, %w", rv.Type(), rv.Len(), l, def.ErrNotMatchArrayElement)
|
||||
}
|
||||
bs, offset, err := d.asStringByteByLength(offset, l, k)
|
||||
if err != nil {
|
||||
@@ -224,7 +225,7 @@ func (d *decoder) decode(rv reflect.Value, offset int) (int, error) {
|
||||
}
|
||||
|
||||
if l > rv.Len() {
|
||||
return 0, fmt.Errorf("%v len is %d, but msgpack has %d elements", rv.Type(), rv.Len(), l)
|
||||
return 0, fmt.Errorf("%v len is %d, but msgpack has %d elements, %w", rv.Type(), rv.Len(), l, def.ErrNotMatchArrayElement)
|
||||
}
|
||||
|
||||
if err = d.hasRequiredLeastSliceSize(o, l); err != nil {
|
||||
@@ -332,11 +333,11 @@ func (d *decoder) decode(rv reflect.Value, offset int) (int, error) {
|
||||
}
|
||||
|
||||
default:
|
||||
return 0, fmt.Errorf("type(%v) is unsupported", rv.Kind())
|
||||
return 0, fmt.Errorf("%v is %w type", rv.Kind(), def.ErrUnsupportedType)
|
||||
}
|
||||
return offset, nil
|
||||
}
|
||||
|
||||
func (d *decoder) errorTemplate(code byte, k reflect.Kind) error {
|
||||
return fmt.Errorf("msgpack : invalid code %x decoding %v", code, k)
|
||||
return fmt.Errorf("%w %x decoding as %v", def.ErrCanNotDecode, code, k)
|
||||
}
|
||||
|
||||
+4
-4
@@ -27,14 +27,14 @@ func (d *decoder) asFloat32(offset int, k reflect.Kind) (float32, int, error) {
|
||||
case d.isPositiveFixNum(code), code == def.Uint8, code == def.Uint16, code == def.Uint32, code == def.Uint64:
|
||||
v, offset, err := d.asUint(offset, k)
|
||||
if err != nil {
|
||||
break
|
||||
return 0, 0, err
|
||||
}
|
||||
return float32(v), offset, nil
|
||||
|
||||
case d.isNegativeFixNum(code), code == def.Int8, code == def.Int16, code == def.Int32, code == def.Int64:
|
||||
v, offset, err := d.asInt(offset, k)
|
||||
if err != nil {
|
||||
break
|
||||
return 0, 0, err
|
||||
}
|
||||
return float32(v), offset, nil
|
||||
|
||||
@@ -73,14 +73,14 @@ func (d *decoder) asFloat64(offset int, k reflect.Kind) (float64, int, error) {
|
||||
case d.isPositiveFixNum(code), code == def.Uint8, code == def.Uint16, code == def.Uint32, code == def.Uint64:
|
||||
v, offset, err := d.asUint(offset, k)
|
||||
if err != nil {
|
||||
break
|
||||
return 0, 0, err
|
||||
}
|
||||
return float64(v), offset, nil
|
||||
|
||||
case d.isNegativeFixNum(code), code == def.Int8, code == def.Int16, code == def.Int32, code == def.Int64:
|
||||
v, offset, err := d.asInt(offset, k)
|
||||
if err != nil {
|
||||
break
|
||||
return 0, 0, err
|
||||
}
|
||||
return float64(v), offset, nil
|
||||
|
||||
|
||||
+3
-3
@@ -134,7 +134,7 @@ func (d *decoder) asInterface(offset int, k reflect.Kind) (interface{}, int, err
|
||||
}
|
||||
v := make(map[interface{}]interface{}, l)
|
||||
for i := 0; i < l; i++ {
|
||||
if d.canSetAsMapKey(o) != nil {
|
||||
if err := d.canSetAsMapKey(o); err != nil {
|
||||
return nil, 0, err
|
||||
}
|
||||
key, o2, err := d.asInterface(o, k)
|
||||
@@ -182,9 +182,9 @@ func (d *decoder) canSetAsMapKey(index int) error {
|
||||
}
|
||||
switch {
|
||||
case d.isFixSlice(code), code == def.Array16, code == def.Array32:
|
||||
return fmt.Errorf("can not use slice code for map key/ code: %x", code)
|
||||
return fmt.Errorf("%w. code: %x", def.ErrCanNotSetSliceAsMapKey, code)
|
||||
case d.isFixMap(code), code == def.Map16, code == def.Map32:
|
||||
return fmt.Errorf("can not use map code for map key/ code: %x", code)
|
||||
return fmt.Errorf("%w. code: %x", def.ErrCanNotSetMapAsMapKey, code)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
+1
-2
@@ -2,7 +2,6 @@ package decoding
|
||||
|
||||
import (
|
||||
"encoding/binary"
|
||||
"errors"
|
||||
"reflect"
|
||||
|
||||
"github.com/shamaton/msgpack/v2/def"
|
||||
@@ -88,7 +87,7 @@ func (d *decoder) mapLength(offset int, k reflect.Kind) (int, int, error) {
|
||||
func (d *decoder) hasRequiredLeastMapSize(offset, length int) error {
|
||||
// minimum check (byte length)
|
||||
if len(d.data[offset:]) < length*2 {
|
||||
return errors.New("data length lacks to create map")
|
||||
return def.ErrLackDataLengthToMap
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
+2
-4
@@ -1,15 +1,13 @@
|
||||
package decoding
|
||||
|
||||
import (
|
||||
"errors"
|
||||
|
||||
"github.com/shamaton/msgpack/v2/def"
|
||||
)
|
||||
|
||||
func (d *decoder) readSize1(index int) (byte, int, error) {
|
||||
rb := def.Byte1
|
||||
if len(d.data) < index+rb {
|
||||
return 0, 0, errors.New("too short bytes")
|
||||
return 0, 0, def.ErrTooShortBytes
|
||||
}
|
||||
return d.data[index], index + rb, nil
|
||||
}
|
||||
@@ -28,7 +26,7 @@ func (d *decoder) readSize8(index int) ([]byte, int, error) {
|
||||
|
||||
func (d *decoder) readSizeN(index, n int) ([]byte, int, error) {
|
||||
if len(d.data) < index+n {
|
||||
return emptyBytes, 0, errors.New("too short bytes")
|
||||
return emptyBytes, 0, def.ErrTooShortBytes
|
||||
}
|
||||
return d.data[index : index+n], index + n, nil
|
||||
}
|
||||
|
||||
+1
-2
@@ -2,7 +2,6 @@ package decoding
|
||||
|
||||
import (
|
||||
"encoding/binary"
|
||||
"errors"
|
||||
"reflect"
|
||||
|
||||
"github.com/shamaton/msgpack/v2/def"
|
||||
@@ -61,7 +60,7 @@ func (d *decoder) sliceLength(offset int, k reflect.Kind) (int, int, error) {
|
||||
func (d *decoder) hasRequiredLeastSliceSize(offset, length int) error {
|
||||
// minimum check (byte length)
|
||||
if len(d.data[offset:]) < length {
|
||||
return errors.New("data length lacks to create map")
|
||||
return def.ErrLackDataLengthToSlice
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user