Describe how to make packages compatible with 5.3.5 and 5.3.6.

As requested by Sam Tobin-Hochstadt on the mailing list today.

Merge to v6.0
This commit is contained in:
Greg Hendershott 2013-12-06 11:37:00 -05:00 committed by Matthew Flatt
parent 1243d12248
commit c80f92885d

View File

@ -505,4 +505,34 @@ Games, etc.}
]
@; - - - - - - - - - - - - - - - - - - - - - - - -
@subsection{Packages Compatible with Racket 5.3.5 and 5.3.6}
A beta version of the package system was added to Racket starting in
version 5.3.5. By the time version 6.0 was released, some features
were added.
By using only certain older features, it is possible to make a package
that can be used with Racket versions 5.3.5, 5.3.6, 6.0, and newer.
In your @racket[info.rkt], you should:
@itemlist[
@item{Use @tt{#lang setup/infotab} (not @tt{#lang info)}.}
@item{Use @racket[(define collection 'multi)]. Even if your package
has a single collection, put it in a subdirectory and make a
multi-collection package.}
@item{If you depend on a specific version of another package, state
this using the @racket[(_other-package-name _required-version)]
form (not the form with @racket[#:version]).}
]
Finally, when listing your package on pkg.racket-lang-org, you should
supply a GitHub source using the URL format
@tt{github://github.com/@nonterm{user}/@nonterm{repo}/@nonterm{rev}@optional{/@nonterm{path}}} (not the
@tt{git:} format).