forked from forgejo/forgejo
Dump: add output format tar and output to stdout (#10376)
* Dump: Use mholt/archive/v3 to support tar including many compressions Signed-off-by: Philipp Homann <homann.philipp@googlemail.com> * Dump: Allow dump output to stdout Signed-off-by: Philipp Homann <homann.philipp@googlemail.com> * Dump: Fixed bug present since #6677 where SessionConfig.Provider is never "file" Signed-off-by: Philipp Homann <homann.philipp@googlemail.com> * Dump: never pack RepoRootPath, LFS.ContentPath and LogRootPath when they are below AppDataPath Signed-off-by: Philipp Homann <homann.philipp@googlemail.com> * Dump: also dump LFS (fixes #10058) Signed-off-by: Philipp Homann <homann.philipp@googlemail.com> * Dump: never dump CustomPath if CustomPath is a subdir of or equal to AppDataPath (fixes #10365) Signed-off-by: Philipp Homann <homann.philipp@googlemail.com> * Use log.Info instead of fmt.Fprintf Signed-off-by: Philipp Homann <homann.philipp@googlemail.com> * import ordering * make fmt Co-authored-by: zeripath <art27@cantab.net> Co-authored-by: techknowlogick <techknowlogick@gitea.io> Co-authored-by: Matti R <matti@mdranta.net>
This commit is contained in:
parent
209b17c4e2
commit
684b7a999f
303 changed files with 301317 additions and 1183 deletions
154
vendor/github.com/klauspost/compress/zstd/enc_params.go
generated
vendored
Normal file
154
vendor/github.com/klauspost/compress/zstd/enc_params.go
generated
vendored
Normal file
|
@ -0,0 +1,154 @@
|
|||
// Copyright 2019+ Klaus Post. All rights reserved.
|
||||
// License information can be found in the LICENSE file.
|
||||
// Based on work by Yann Collet, released under BSD License.
|
||||
|
||||
package zstd
|
||||
|
||||
type encParams struct {
|
||||
// largest match distance : larger == more compression, more memory needed during decompression
|
||||
windowLog uint8
|
||||
|
||||
// fully searched segment : larger == more compression, slower, more memory (useless for fast)
|
||||
chainLog uint8
|
||||
|
||||
// dispatch table : larger == faster, more memory
|
||||
hashLog uint8
|
||||
|
||||
// < nb of searches : larger == more compression, slower
|
||||
searchLog uint8
|
||||
|
||||
// < match length searched : larger == faster decompression, sometimes less compression
|
||||
minMatch uint8
|
||||
|
||||
// acceptable match size for optimal parser (only) : larger == more compression, slower
|
||||
targetLength uint32
|
||||
|
||||
// see ZSTD_strategy definition above
|
||||
strategy strategy
|
||||
}
|
||||
|
||||
// strategy defines the algorithm to use when generating sequences.
|
||||
type strategy uint8
|
||||
|
||||
const (
|
||||
// Compression strategies, listed from fastest to strongest
|
||||
strategyFast strategy = iota + 1
|
||||
strategyDfast
|
||||
strategyGreedy
|
||||
strategyLazy
|
||||
strategyLazy2
|
||||
strategyBtlazy2
|
||||
strategyBtopt
|
||||
strategyBtultra
|
||||
strategyBtultra2
|
||||
// note : new strategies _might_ be added in the future.
|
||||
// Only the order (from fast to strong) is guaranteed
|
||||
|
||||
)
|
||||
|
||||
var defEncParams = [4][]encParams{
|
||||
{ // "default" - for any srcSize > 256 KB
|
||||
// W, C, H, S, L, TL, strat
|
||||
{19, 12, 13, 1, 6, 1, strategyFast}, // base for negative levels
|
||||
{19, 13, 14, 1, 7, 0, strategyFast}, // level 1
|
||||
{20, 15, 16, 1, 6, 0, strategyFast}, // level 2
|
||||
{21, 16, 17, 1, 5, 1, strategyDfast}, // level 3
|
||||
{21, 18, 18, 1, 5, 1, strategyDfast}, // level 4
|
||||
{21, 18, 19, 2, 5, 2, strategyGreedy}, // level 5
|
||||
{21, 19, 19, 3, 5, 4, strategyGreedy}, // level 6
|
||||
{21, 19, 19, 3, 5, 8, strategyLazy}, // level 7
|
||||
{21, 19, 19, 3, 5, 16, strategyLazy2}, // level 8
|
||||
{21, 19, 20, 4, 5, 16, strategyLazy2}, // level 9
|
||||
{22, 20, 21, 4, 5, 16, strategyLazy2}, // level 10
|
||||
{22, 21, 22, 4, 5, 16, strategyLazy2}, // level 11
|
||||
{22, 21, 22, 5, 5, 16, strategyLazy2}, // level 12
|
||||
{22, 21, 22, 5, 5, 32, strategyBtlazy2}, // level 13
|
||||
{22, 22, 23, 5, 5, 32, strategyBtlazy2}, // level 14
|
||||
{22, 23, 23, 6, 5, 32, strategyBtlazy2}, // level 15
|
||||
{22, 22, 22, 5, 5, 48, strategyBtopt}, // level 16
|
||||
{23, 23, 22, 5, 4, 64, strategyBtopt}, // level 17
|
||||
{23, 23, 22, 6, 3, 64, strategyBtultra}, // level 18
|
||||
{23, 24, 22, 7, 3, 256, strategyBtultra2}, // level 19
|
||||
{25, 25, 23, 7, 3, 256, strategyBtultra2}, // level 20
|
||||
{26, 26, 24, 7, 3, 512, strategyBtultra2}, // level 21
|
||||
{27, 27, 25, 9, 3, 999, strategyBtultra2}, // level 22
|
||||
},
|
||||
{ // for srcSize <= 256 KB
|
||||
// W, C, H, S, L, T, strat
|
||||
{18, 12, 13, 1, 5, 1, strategyFast}, // base for negative levels
|
||||
{18, 13, 14, 1, 6, 0, strategyFast}, // level 1
|
||||
{18, 14, 14, 1, 5, 1, strategyDfast}, // level 2
|
||||
{18, 16, 16, 1, 4, 1, strategyDfast}, // level 3
|
||||
{18, 16, 17, 2, 5, 2, strategyGreedy}, // level 4.
|
||||
{18, 18, 18, 3, 5, 2, strategyGreedy}, // level 5.
|
||||
{18, 18, 19, 3, 5, 4, strategyLazy}, // level 6.
|
||||
{18, 18, 19, 4, 4, 4, strategyLazy}, // level 7
|
||||
{18, 18, 19, 4, 4, 8, strategyLazy2}, // level 8
|
||||
{18, 18, 19, 5, 4, 8, strategyLazy2}, // level 9
|
||||
{18, 18, 19, 6, 4, 8, strategyLazy2}, // level 10
|
||||
{18, 18, 19, 5, 4, 12, strategyBtlazy2}, // level 11.
|
||||
{18, 19, 19, 7, 4, 12, strategyBtlazy2}, // level 12.
|
||||
{18, 18, 19, 4, 4, 16, strategyBtopt}, // level 13
|
||||
{18, 18, 19, 4, 3, 32, strategyBtopt}, // level 14.
|
||||
{18, 18, 19, 6, 3, 128, strategyBtopt}, // level 15.
|
||||
{18, 19, 19, 6, 3, 128, strategyBtultra}, // level 16.
|
||||
{18, 19, 19, 8, 3, 256, strategyBtultra}, // level 17.
|
||||
{18, 19, 19, 6, 3, 128, strategyBtultra2}, // level 18.
|
||||
{18, 19, 19, 8, 3, 256, strategyBtultra2}, // level 19.
|
||||
{18, 19, 19, 10, 3, 512, strategyBtultra2}, // level 20.
|
||||
{18, 19, 19, 12, 3, 512, strategyBtultra2}, // level 21.
|
||||
{18, 19, 19, 13, 3, 999, strategyBtultra2}, // level 22.
|
||||
},
|
||||
{ // for srcSize <= 128 KB
|
||||
// W, C, H, S, L, T, strat
|
||||
{17, 12, 12, 1, 5, 1, strategyFast}, // base for negative levels
|
||||
{17, 12, 13, 1, 6, 0, strategyFast}, // level 1
|
||||
{17, 13, 15, 1, 5, 0, strategyFast}, // level 2
|
||||
{17, 15, 16, 2, 5, 1, strategyDfast}, // level 3
|
||||
{17, 17, 17, 2, 4, 1, strategyDfast}, // level 4
|
||||
{17, 16, 17, 3, 4, 2, strategyGreedy}, // level 5
|
||||
{17, 17, 17, 3, 4, 4, strategyLazy}, // level 6
|
||||
{17, 17, 17, 3, 4, 8, strategyLazy2}, // level 7
|
||||
{17, 17, 17, 4, 4, 8, strategyLazy2}, // level 8
|
||||
{17, 17, 17, 5, 4, 8, strategyLazy2}, // level 9
|
||||
{17, 17, 17, 6, 4, 8, strategyLazy2}, // level 10
|
||||
{17, 17, 17, 5, 4, 8, strategyBtlazy2}, // level 11
|
||||
{17, 18, 17, 7, 4, 12, strategyBtlazy2}, // level 12
|
||||
{17, 18, 17, 3, 4, 12, strategyBtopt}, // level 13.
|
||||
{17, 18, 17, 4, 3, 32, strategyBtopt}, // level 14.
|
||||
{17, 18, 17, 6, 3, 256, strategyBtopt}, // level 15.
|
||||
{17, 18, 17, 6, 3, 128, strategyBtultra}, // level 16.
|
||||
{17, 18, 17, 8, 3, 256, strategyBtultra}, // level 17.
|
||||
{17, 18, 17, 10, 3, 512, strategyBtultra}, // level 18.
|
||||
{17, 18, 17, 5, 3, 256, strategyBtultra2}, // level 19.
|
||||
{17, 18, 17, 7, 3, 512, strategyBtultra2}, // level 20.
|
||||
{17, 18, 17, 9, 3, 512, strategyBtultra2}, // level 21.
|
||||
{17, 18, 17, 11, 3, 999, strategyBtultra2}, // level 22.
|
||||
},
|
||||
{ // for srcSize <= 16 KB
|
||||
// W, C, H, S, L, T, strat
|
||||
{14, 12, 13, 1, 5, 1, strategyFast}, // base for negative levels
|
||||
{14, 14, 15, 1, 5, 0, strategyFast}, // level 1
|
||||
{14, 14, 15, 1, 4, 0, strategyFast}, // level 2
|
||||
{14, 14, 15, 2, 4, 1, strategyDfast}, // level 3
|
||||
{14, 14, 14, 4, 4, 2, strategyGreedy}, // level 4
|
||||
{14, 14, 14, 3, 4, 4, strategyLazy}, // level 5.
|
||||
{14, 14, 14, 4, 4, 8, strategyLazy2}, // level 6
|
||||
{14, 14, 14, 6, 4, 8, strategyLazy2}, // level 7
|
||||
{14, 14, 14, 8, 4, 8, strategyLazy2}, // level 8.
|
||||
{14, 15, 14, 5, 4, 8, strategyBtlazy2}, // level 9.
|
||||
{14, 15, 14, 9, 4, 8, strategyBtlazy2}, // level 10.
|
||||
{14, 15, 14, 3, 4, 12, strategyBtopt}, // level 11.
|
||||
{14, 15, 14, 4, 3, 24, strategyBtopt}, // level 12.
|
||||
{14, 15, 14, 5, 3, 32, strategyBtultra}, // level 13.
|
||||
{14, 15, 15, 6, 3, 64, strategyBtultra}, // level 14.
|
||||
{14, 15, 15, 7, 3, 256, strategyBtultra}, // level 15.
|
||||
{14, 15, 15, 5, 3, 48, strategyBtultra2}, // level 16.
|
||||
{14, 15, 15, 6, 3, 128, strategyBtultra2}, // level 17.
|
||||
{14, 15, 15, 7, 3, 256, strategyBtultra2}, // level 18.
|
||||
{14, 15, 15, 8, 3, 256, strategyBtultra2}, // level 19.
|
||||
{14, 15, 15, 8, 3, 512, strategyBtultra2}, // level 20.
|
||||
{14, 15, 15, 9, 3, 512, strategyBtultra2}, // level 21.
|
||||
{14, 15, 15, 10, 3, 999, strategyBtultra2}, // level 22.
|
||||
},
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue