[racket] input requested on tools for Racket library developers
If you develop Racket libraries, or would like to, this is a request for
input...
I want to make it easier for myself and others to develop reusable
Racket libraries that wind up in PLaneT in a timely manner.
The initial problem was to make it easier to do documentation, by
embedded it in the source files and not having to repeat info (e.g.,
info already captured in contracts or in Typed Racket info). This,
called McFly, has been close to complete, and is waiting for a few more
features and for polish before people start using it and I can't change
things easily anymore.
The next problem is how to *easily* and *reliably* manage PLaneT
development links for lots of these packages, including sets of packages
updated together, which solution I decided to add to McFly, since McFly
already put PLaneT version information into "info.rkt". This is mostly
complete. There is now a "raco mcfly dev-links" (or "racket mcfly dl")
command, to update PLaneT development links based on "info.rkt" files in
zero or more specified directory trees (or current directory),
information the PLaneT server has about current versions, and existing
development links. Here's an example run:
$ raco mcfly dl
Searching directory "/home/user/racket/"...
Keeping unknown development links (not overridden):
neil/soundex:1:=4 /fake/path/one
Keeping specified development links:
neil/mcfly:1:=0 /home/user/racket/mcfly
neil/mcfly-tools:1:=0 /home/user/racket/mcfly-tools
Not adding specified development links (on PLaneT server):
neil/html-parsing:1:=2 /home/user/racket/html-parsing
REMOVING specified development links (on PLaneT server):
neil/soundex:1:=3 /home/user/racket/soundex
REMOVING unknown development links (to be overridden):
neil/postnet:1:=2 /fake/path/two
ADDING specified development links:
neil/postnet:1:=2 /home/user/racket/postnet
There will be misc. other "raco mcfly" commands, such as for building a
package (with the additional stuff McFly does), building and viewing
documentation, and releasing the package to the PLaneT (including being
safe about expected version number and what files are included).
So, before I release McFly, and some things get set in stone, I was
wondering whether anyone had any input on things they'd like to see in
it. (The scope of McFly is no longer well-defined -- something like
'useful additional tools for Racket library developers' -- so difficult
to say what does and does not belong in McFly.)
--
http://www.neilvandyke.org/