feat: initial goget release — modern IPv6-first download utility

This commit is contained in:
2026-06-26 21:21:58 +02:00
commit 53db81e1f7
147 changed files with 45931 additions and 0 deletions
+45
View File
@@ -0,0 +1,45 @@
//go:build linux || freebsd
// +build linux freebsd
package compression
import (
"compress/flate"
"fmt"
"io"
)
type flateDecompressor struct{ *BaseDecompressor }
func NewFlateDecompressor() *flateDecompressor {
return &flateDecompressor{NewBaseDecompressor("flate", []string{}, []string{".deflate", ".fl"})}
}
// ✅ Oprava: flate.NewReader returns io.ReadCloser, ale my returnsme io.Reader
func (f *flateDecompressor) Reader(r io.Reader) (io.ReadCloser, error) {
return flate.NewReader(r), nil
}
type flateCompressor struct {
name string
level int
}
func NewFlateCompressor() *flateCompressor {
return &flateCompressor{name: "flate", level: flate.DefaultCompression}
}
func NewFlateCompressorWithLevel(level int) (*flateCompressor, error) {
if level < flate.HuffmanOnly || level > flate.BestCompression {
return nil, fmt.Errorf("invalid compression level: %d (must be %d-%d)",
level, flate.HuffmanOnly, flate.BestCompression)
}
return &flateCompressor{name: "flate", level: level}, nil
}
func (f *flateCompressor) Name() string { return f.name }
func (f *flateCompressor) Writer(w io.Writer) (io.WriteCloser, error) {
return flate.NewWriter(w, f.level)
}
func init() { Register(NewFlateDecompressor()) }