source: project/README @ 121

Last change on this file since 121 was 121, checked in by felix winkelmann, 14 years ago

README fix, no z3.meta

File size: 3.5 KB
Line 
1Notes for Extension Maintainers
2===============================
3
4
5This directory contains the development files for the official extensions of the
6CHICKEN Scheme implementation. You will find one directory for each extension
7containing all relevant files needed to build and distribute it.
8
9The extensions are stored in a subversion repository. If you want to know more
10about Subversion, visit http://subversion.tigris.org/.
11
12The URL of the repository is
13
14  https://secure.afc.no-ip.info/svn/chicken-eggs
15
16To download the tree, enter
17
18  $ svn co https://secure.afc.no-ip.info/svn/chicken-eggs
19
20  (login "anonymous", password is "")
21
22To gain write-access to the repository, contact felix@call-with-current-continuation.org,
23or ask on the CHICKEN mailing list.
24
25If you make any changes and commit them to the repository, a script on the
26server will create the egg (the packaged extension) and move it to the official
27site from which it can be downloaded via the `chicken-setup' tool. All that is
28required is a separate description named `EXTENSION.meta' that holds meta-information
29describing the author, required files and the category. The format is quite simple,
30it simple contains a list of sub-lists holding meta-properties. Here a simple
31example, taken from the `ajax' egg:
32
33
34((egg "ajax.egg")
35 (synopsis "Using xmlHttpRequest with the Spiffy web-server")
36 (needs md5 url spiffy)
37 (category web)
38 (license "MIT")
39 (author "felix <felix@call-with-current-continuation.org>")
40 (files "ajax.setup" "ajax.scm" "ajax.html" "prototype.js"))
41
42
43You should at least provide the following properties:
44
45  (synopsis STRING)
46
47    A short description of the extension.
48
49  (author STRING)
50
51    The author, optionally with an e-mail address, if desired.
52
53  (files STRING ...)
54
55    The names of all files that should be contained in the egg.
56
57  (egg STRING)
58
59    The name of the egg file.
60
61  (license STRING)
62
63    The license under which the code is released. Please make sure you use the
64    proper license if you package code written by others.
65
66  (category SYMBOL)
67
68    A category under which the egg should be listed on the egg-index page at
69    http://www.call-with-current-continuation.org/eggs/index.html.
70
71    Currently the set of categories is fixed, use one of:
72
73      lang-exts   Language extensions
74      graphics    Graphics
75      debugging   Debugging tools
76      net         Networking
77      io          Input/Output
78      db          Databases
79      ffi         Interfacing to other languages
80      web         Web programming
81      xml         XML processing
82      doc-tools   Documentation tools
83      math        Mathematical libraries
84      oop         Object-oriented programming
85      data        Algorithms and data-structures
86      parsing     Data formats and parsing
87      tools       Tools
88      testing     Unit-testing
89      crypt       Cryptography
90      ui          User interface toolkits
91      code-generation Run-time code generation
92      misc        Miscellaneous
93
94  (needs SYMBOL ...)
95
96    Any extensions needed to build and use this extension. This should be the
97    raw extension-identifier, the same that you would use in a `require-extension'
98    form.
99
100You should provide a HTML file with documentation, if possible using Zbigniew
101Szadkowski's `eggdoc' extension (see http://www.call-with-current-continuation.org/eggs/eggdoc).
102If named `EXTENSION-NAME.html', then it will be automatically uploaded to call/cc.org.
103
104One final note: please keep the version numbers up-to date and add changes to the doc.scm
105or (if no eggdoc-script exists) the html file.
106
107
108Many thanks for contributing!
Note: See TracBrowser for help on using the repository browser.