47 lines
1.2 KiB
Markdown
47 lines
1.2 KiB
Markdown
# 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 .
|
|
```
|