# package-zipper Creates a clean, versioned ZIP archive of the current Racket package. ```racket (require package-zipper) (zip-package) ``` `zip-package` reads `version` from the current directory's `info.rkt`. For a directory named `racket-upnp` with version `"5.0"`, it creates: ```text ../racket-upnp-5.0.zip ``` The ZIP recursively contains the package files, except for: - `.git` - `compiled` - names ending in `~` - names ending in `.bak` - `.html`, `.js`, and `.css` files below `scribblings`, `scribbles`, or `scrbl` The built-in directory and extension comparisons are case-insensitive. Additional exclusions can be supplied with `#:exclude`: ```racket (zip-package #:exclude (list "tmp" (string->path "examples/generated") #rx"^tests/data/")) ``` An exclusion string matches a file or directory name anywhere in the relative path. A path value matches that relative path and everything below it. A regular expression is matched against the complete relative path, using `/` as the path separator. Custom string and path comparisons are case-sensitive. Install this source directory as a linked package during development: ```sh raco pkg install --auto --link . ```