source: project/README @ 5

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

fixed in commit script, slight changes in s11n

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