1 Introduction
2 Usage
3 Known Issues
4 History
5 Legal
Version: 1:3

McFly Tools: Developer Tools for Racket

Neil Van Dyke

 (require (planet neil/mcfly-tools:1:3))

1 Introduction

This is an alpha-quality release. Not for general use yet.
Privacy/Security Warning: McFly Tools makes frequent requests to the PLaneT server, and these requests might reveal to the server the package names of Racket packages that you are working on. So don’t use McFly Tools for trade-secret packages named secret-social-media-startup-based-on-rocks just yet. Probably this little information leak isn’t a problem for you, but we mention it on principle. An eventual later version of McFly Tools will likely improve this situation.
McFly Tools is a collection of developer tools for Racket programmers, oriented towards supporting and encouraging the sharing of Racket code libraries as reusable PLaneT packages.
Some things McFly Tools does are:
  • Supports the embedding of documentation directly in source files, together with the McFly Runtime package.

  • Maintains PLaneT development links, based on metadata in "info.rkt", information from the PLaneT server, and current activity using McFly Tools.

  • Programmatically updates "info.rkt" files to add any missing definitions. (This uses the progedit package.)

  • Automates building PLaneT archive files for upload to the PLaneT server.

Note that McFly Tools is a development tool used only by those who choose to use it. Packages developed using McFly depend only on the McFly Runtime package.

2 Usage

The interface to McFly Tools is the raco mcfly command.
Someday this will be documented.
Note: If using McFly Tools with Racket nightly builds or Git from shortly prior to 2012-06-13, some versions have an erroneous error of raco setup: nothing to do in response to raco setup -P with development links, which breaks McFly Tools. This was fixed on 2012-06-12 in commit af9d11bfce8673fa2d72cec77651ba771e1971fe.

3 Known Issues

McFly Tools is not yet feature-complete, nor fully tested.

4 History

5 Legal

Copyright 2012 Neil Van Dyke. This program is Free Software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. See http://www.gnu.org/licenses/ for details. For other licenses and consulting, please contact the author.