tarx

package
v0.6.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 17, 2026 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MakeEmptyTar added in v0.6.0

func MakeEmptyTar() io.ReadCloser

MakeEmptyTar returns a valid empty gzipped tar archive.

func MakeFilteredTar added in v0.6.0

func MakeFilteredTar(dir string, includePatterns []string, onlyPaths map[string]bool, uncompressedBytes *atomic.Int64) (io.ReadCloser, error)

MakeFilteredTar creates a gzipped tar like MakeTar but only includes files whose relative paths are in the onlyPaths set. Directory entries are included as needed to contain the requested files. If uncompressedBytes is non-nil, each file's uncompressed size is atomically added after it is written.

func MakeTar

func MakeTar(dir string, includePatterns []string, uncompressedBytes *atomic.Int64) (io.ReadCloser, error)

func TarFS

func TarFS(r io.Reader, dir string) (fsutil.FS, error)

func TarToMap

func TarToMap(r io.Reader) (map[string][]byte, error)

func ValidatePattern

func ValidatePattern(pattern string) error

ValidatePattern checks if a pattern is valid for use with pathspec.GitIgnore

Types

type FileManifest added in v0.6.0

type FileManifest struct {
	Path string
	Hash string
	Size int64
	Mode int32
}

FileManifest represents a file's metadata for delta upload comparison.

func ComputeManifest added in v0.6.0

func ComputeManifest(dir string, includePatterns []string) ([]FileManifest, error)

ComputeManifest walks a directory using the same gitignore/include logic as MakeTar and returns a manifest of all regular files with their SHA-256 hashes.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL