mirror of
https://github.com/containers/skopeo.git
synced 2025-09-22 18:37:21 +00:00
Bump github.com/containers/storage from 1.23.4 to 1.23.5
Bumps [github.com/containers/storage](https://github.com/containers/storage) from 1.23.4 to 1.23.5. - [Release notes](https://github.com/containers/storage/releases) - [Changelog](https://github.com/containers/storage/blob/master/docs/containers-storage-changes.md) - [Commits](https://github.com/containers/storage/compare/v1.23.4...v1.23.5) Signed-off-by: dependabot-preview[bot] <support@dependabot.com> Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
This commit is contained in:
committed by
Daniel J Walsh
parent
5dd09d76c3
commit
4eda1d092d
39
vendor/github.com/klauspost/compress/zstd/encoder.go
generated
vendored
39
vendor/github.com/klauspost/compress/zstd/encoder.go
generated
vendored
@@ -35,7 +35,7 @@ type encoder interface {
|
||||
AppendCRC([]byte) []byte
|
||||
WindowSize(size int) int32
|
||||
UseBlock(*blockEnc)
|
||||
Reset(singleBlock bool)
|
||||
Reset(d *dict, singleBlock bool)
|
||||
}
|
||||
|
||||
type encoderState struct {
|
||||
@@ -83,8 +83,6 @@ func (e *Encoder) initialize() {
|
||||
e.encoders = make(chan encoder, e.o.concurrent)
|
||||
for i := 0; i < e.o.concurrent; i++ {
|
||||
enc := e.o.encoder()
|
||||
// If not single block, history will be allocated on first use.
|
||||
enc.Reset(true)
|
||||
e.encoders <- enc
|
||||
}
|
||||
}
|
||||
@@ -115,7 +113,7 @@ func (e *Encoder) Reset(w io.Writer) {
|
||||
s.filling = s.filling[:0]
|
||||
s.current = s.current[:0]
|
||||
s.previous = s.previous[:0]
|
||||
s.encoder.Reset(false)
|
||||
s.encoder.Reset(e.o.dict, false)
|
||||
s.headerWritten = false
|
||||
s.eofWritten = false
|
||||
s.fullFrameWritten = false
|
||||
@@ -200,8 +198,9 @@ func (e *Encoder) nextBlock(final bool) error {
|
||||
WindowSize: uint32(s.encoder.WindowSize(0)),
|
||||
SingleSegment: false,
|
||||
Checksum: e.o.crc,
|
||||
DictID: 0,
|
||||
DictID: e.o.dict.ID(),
|
||||
}
|
||||
|
||||
dst, err := fh.appendTo(tmp[:0])
|
||||
if err != nil {
|
||||
return err
|
||||
@@ -281,7 +280,7 @@ func (e *Encoder) nextBlock(final bool) error {
|
||||
// If we got the exact same number of literals as input,
|
||||
// assume the literals cannot be compressed.
|
||||
if len(src) != len(blk.literals) || len(src) != e.o.blockSize {
|
||||
err = blk.encode(e.o.noEntropy, !e.o.allLitEntropy)
|
||||
err = blk.encode(src, e.o.noEntropy, !e.o.allLitEntropy)
|
||||
}
|
||||
switch err {
|
||||
case errIncompressible:
|
||||
@@ -311,7 +310,13 @@ func (e *Encoder) ReadFrom(r io.Reader) (n int64, err error) {
|
||||
if debug {
|
||||
println("Using ReadFrom")
|
||||
}
|
||||
// Maybe handle stuff queued?
|
||||
|
||||
// Flush any current writes.
|
||||
if len(e.state.filling) > 0 {
|
||||
if err := e.nextBlock(false); err != nil {
|
||||
return 0, err
|
||||
}
|
||||
}
|
||||
e.state.filling = e.state.filling[:e.o.blockSize]
|
||||
src := e.state.filling
|
||||
for {
|
||||
@@ -328,7 +333,7 @@ func (e *Encoder) ReadFrom(r io.Reader) (n int64, err error) {
|
||||
if debug {
|
||||
println("ReadFrom: got EOF final block:", len(e.state.filling))
|
||||
}
|
||||
return n, e.nextBlock(true)
|
||||
return n, nil
|
||||
default:
|
||||
if debug {
|
||||
println("ReadFrom: got error:", err)
|
||||
@@ -450,7 +455,6 @@ func (e *Encoder) EncodeAll(src, dst []byte) []byte {
|
||||
defer func() {
|
||||
// Release encoder reference to last block.
|
||||
// If a non-single block is needed the encoder will reset again.
|
||||
enc.Reset(true)
|
||||
e.encoders <- enc
|
||||
}()
|
||||
// Use single segments when above minimum window and below 1MB.
|
||||
@@ -463,7 +467,7 @@ func (e *Encoder) EncodeAll(src, dst []byte) []byte {
|
||||
WindowSize: uint32(enc.WindowSize(len(src))),
|
||||
SingleSegment: single,
|
||||
Checksum: e.o.crc,
|
||||
DictID: 0,
|
||||
DictID: e.o.dict.ID(),
|
||||
}
|
||||
|
||||
// If less than 1MB, allocate a buffer up front.
|
||||
@@ -477,13 +481,18 @@ func (e *Encoder) EncodeAll(src, dst []byte) []byte {
|
||||
|
||||
// If we can do everything in one block, prefer that.
|
||||
if len(src) <= maxCompressedBlockSize {
|
||||
enc.Reset(e.o.dict, true)
|
||||
// Slightly faster with no history and everything in one block.
|
||||
if e.o.crc {
|
||||
_, _ = enc.CRC().Write(src)
|
||||
}
|
||||
blk := enc.Block()
|
||||
blk.last = true
|
||||
enc.EncodeNoHist(blk, src)
|
||||
if e.o.dict == nil {
|
||||
enc.EncodeNoHist(blk, src)
|
||||
} else {
|
||||
enc.Encode(blk, src)
|
||||
}
|
||||
|
||||
// If we got the exact same number of literals as input,
|
||||
// assume the literals cannot be compressed.
|
||||
@@ -492,7 +501,7 @@ func (e *Encoder) EncodeAll(src, dst []byte) []byte {
|
||||
if len(blk.literals) != len(src) || len(src) != e.o.blockSize {
|
||||
// Output directly to dst
|
||||
blk.output = dst
|
||||
err = blk.encode(e.o.noEntropy, !e.o.allLitEntropy)
|
||||
err = blk.encode(src, e.o.noEntropy, !e.o.allLitEntropy)
|
||||
}
|
||||
|
||||
switch err {
|
||||
@@ -508,7 +517,7 @@ func (e *Encoder) EncodeAll(src, dst []byte) []byte {
|
||||
}
|
||||
blk.output = oldout
|
||||
} else {
|
||||
enc.Reset(false)
|
||||
enc.Reset(e.o.dict, false)
|
||||
blk := enc.Block()
|
||||
for len(src) > 0 {
|
||||
todo := src
|
||||
@@ -519,7 +528,6 @@ func (e *Encoder) EncodeAll(src, dst []byte) []byte {
|
||||
if e.o.crc {
|
||||
_, _ = enc.CRC().Write(todo)
|
||||
}
|
||||
blk.reset(nil)
|
||||
blk.pushOffsets()
|
||||
enc.Encode(blk, todo)
|
||||
if len(src) == 0 {
|
||||
@@ -529,7 +537,7 @@ func (e *Encoder) EncodeAll(src, dst []byte) []byte {
|
||||
// If we got the exact same number of literals as input,
|
||||
// assume the literals cannot be compressed.
|
||||
if len(blk.literals) != len(todo) || len(todo) != e.o.blockSize {
|
||||
err = blk.encode(e.o.noEntropy, !e.o.allLitEntropy)
|
||||
err = blk.encode(todo, e.o.noEntropy, !e.o.allLitEntropy)
|
||||
}
|
||||
|
||||
switch err {
|
||||
@@ -544,6 +552,7 @@ func (e *Encoder) EncodeAll(src, dst []byte) []byte {
|
||||
default:
|
||||
panic(err)
|
||||
}
|
||||
blk.reset(nil)
|
||||
}
|
||||
}
|
||||
if e.o.crc {
|
||||
|
Reference in New Issue
Block a user