{"size": 1280, "ext": "scrbl", "max_stars_repo_path": "pkgs/racket-doc/file/scribblings/untgz.scrbl", "max_stars_repo_name": "lkh01/racket", "max_stars_repo_stars_event_min_datetime": "2018-07-29T04:13:52.000Z", "max_stars_repo_stars_event_max_datetime": "2022-02-14T16:11:17.000Z", "max_issues_repo_path": "pkgs/racket-doc/file/scribblings/untgz.scrbl", "max_issues_repo_name": "lkh01/racket", "max_issues_repo_issues_event_min_datetime": "2017-08-25T20:26:37.000Z", "max_issues_repo_issues_event_max_datetime": "2022-02-26T17:48:40.000Z", "max_forks_repo_path": "pkgs/racket-doc/file/scribblings/untgz.scrbl", "max_forks_repo_name": "lkh01/racket", "max_forks_repo_forks_event_min_datetime": "2016-04-25T11:47:57.000Z", "max_forks_repo_forks_event_max_datetime": "2017-05-09T14:52:48.000Z"}
{"max_stars_count": 10, "max_issues_count": 15, "max_forks_count": 3, "avg_line_length": 45.7142857143, "max_line_length": 82, "alphanum_fraction": 0.4796875}
#lang scribble/doc
@(require "common.rkt" (for-label file/untgz
                                  file/untar
                                  file/gunzip))

@title[#:tag "untgz"]{@exec{tar}+@exec{gzip} File Extraction}

@defmodule[file/untgz]{The @racketmodname[file/untgz] library provides
a function to extract items from a possible @exec{gzip}ped TAR/USTAR archive.}

@defproc[(untgz           [in (or/c path-string? input-port?)]
                          [#:dest dest-path (or/c path-string? #f) #f]
                          [#:strip-count strip-count exact-nonnegative-integer? 0]
                          [#:permissive? permissive? any/c #f]
                          [#:filter filter-proc
                                    (path? (or/c path? #f)
                                     symbol? exact-integer? (or/c path? #f)
                                     exact-nonnegative-integer?
                                     exact-nonnegative-integer?
                                     . -> . any/c)
                                    (lambda args #t)])
         void?]{

The same as @racket[untar], but if @racket[in] is in @exec{gzip} form,
it is @racket[gunzip]ped as it is unpacked.

@history[#:changed "6.3" @elem{Added the @racket[#:permissive?] argument.}]}
