forked from markuslh/homalg
-
Notifications
You must be signed in to change notification settings - Fork 0
/
PackageInfo.g
349 lines (323 loc) · 15.2 KB
/
PackageInfo.g
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
#############################################################################
##
## PackageInfo.g for the package `homalg' Mohamed Barakat
## (created from Frank Lübeck's PackageInfo.g template file)
##
## For the LoadPackage mechanism in GAP >= 4.4 only the entries
## .PackageName, .Version, .PackageDoc, .Dependencies, .AvailabilityTest
## .Autoload are needed. The other entries are relevant if the
## package shall be distributed for other GAP users, in particular if it
## shall be redistributed via the GAP Website.
## With a new release of the package at least the entries .Version, .Date and
## .ArchiveURL must be updated.
SetPackageInfo( rec(
## This is case sensitive, use your preferred spelling.
#
PackageName := "homalg",
## This may be used by a default banner or on a Web page, should fit on
## one line.
Subtitle := "A homological algebra meta-package for computable Abelian categories",
## See '?Extending: Version Numbers' in GAP help for an explanation
## of valid version numbers. For an automatic package distribution update
## you must provide a new version number even after small changes.
Version := Maximum( [
"2012.10.28", ## Mohamed's version
## this line prevents merge conflicts
"2012.09.17", ## Markus' version
## this line prevents merge conflicts
"2013.04.26", ## Sebas' version
] ),
## Please adjust also the VERSION file in the package directory when
## changing this.
## Release date of the current version in dd/mm/yyyy format.
#
# this avoids git-merge conflicts
Date := ~.Version{[ 1 .. 10 ]},
Date := Concatenation( ~.Date{[ 9, 10 ]}, "/", ~.Date{[ 6, 7 ]}, "/", ~.Date{[ 1 .. 4 ]} ),
## URL of the archive(s) of the current package release, but *without*
## the format extension(s), like '.zoo', which are given next.
## The archive file name *must be changed* with each version of the archive
## (and probably somehow contain the package name and version).
## The paths of the files in the archive must begin with the name of the
## directory containing the package (in our "example" probably:
## example/init.g, ... or example-1.3/init.g, ... )
#
ArchiveURL := Concatenation( "http://homalg.math.rwth-aachen.de/~barakat/homalg-project/homalg/homalg-", ~.Version ),
## All provided formats as list of file extensions, separated by white
## space or commas.
## Currently recognized formats are:
## .zoo the (GAP-traditional) zoo-format with "!TEXT!" comments
## for text files
## .tar.gz the UNIX standard
## .tar.bz2 compressed with 'bzip2', often smaller than with gzip
## -win.zip zip-format for DOS/Windows, text files must have DOS
## style line breaks (CRLF)
##
## In the future we may also provide .deb or .rpm formats which allow
## a convenient installation and upgrading on Linux systems.
##
# ArchiveFormats := ".zoo", # the others are generated automatically
ArchiveFormats := ".tar.gz",
## If not all of the archive formats mentioned above are provided, these
## can be produced at the GAP side. Therefore it is necessary to know which
## files of the package distribution are text files which should be unpacked
## with operating system specific line breaks. There are the following
## possibilities to specify the text files:
##
## - specify below a component 'TextFiles' which is a list of names of the
## text files, relative to the package root directory (e.g., "lib/bla.g")
## - specify below a component 'BinaryFiles' as list of names, then all other
## files are taken as text files.
## - if no 'TextFiles' or 'BinaryFiles' are given and a .zoo archive is
## provided, then the files in that archive with a "!TEXT!" comment are
## taken as text files
## - otherwise: exactly the files with names matching the regular expression
## ".*\(\.txt\|\.gi\|\.gd\|\.g\|\.c\|\.h\|\.htm\|\.html\|\.xml\|\.tex\|\.six\|\.bib\|\.tst\|README.*\|INSTALL.*\|Makefile\)"
## are taken as text files
##
## (Remark: Just providing a .tar.gz file will often result in useful
## archives)
##
## These entries are *optional*.
#TextFiles := ["init.g", ......],
#BinaryFiles := ["doc/manual.dvi", ......],
## Information about authors and maintainers. Specify for each person a
## record with the following information:
##
## rec(
## # these are compulsory, characters are interpreted as latin-1, so
## # German umlauts and other western European special characters are ok:
## LastName := "Müller",
## FirstNames := "Fritz Eduard",
##
## # At least one of the following two entries must be given and set
## # to 'true' (an entry can be left out if value is not 'true'):
## IsAuthor := true;
## IsMaintainer := true;
##
## # At least one of the following three entries must be given.
## # - preferably email address and WWW homepage
## # - postal address not needed if email or WWW address available
## # - if no contact known, specify postal address as "no address known"
## Email := "[email protected]",
## # complete URL, starting with protocol
## WWWHome := "http://www.no.org/~Mueller",
## # separate lines by '\n' (*optional*)
## PostalAddress := "Dr. F. Müller\nNo Org Institute\nNo Place 13\n\
## 12345 Notown\nNocountry"
##
## # If you want, add one or both of the following entries (*optional*)
## Place := "Notown",
## Institution := "Institute for Nothing"
## )
##
Persons := [
rec(
LastName := "Barakat",
FirstNames := "Mohamed",
IsAuthor := true,
IsMaintainer := true,
Email := "[email protected]",
WWWHome := "http://www.mathematik.uni-kl.de/~barakat/",
PostalAddress := Concatenation( [
"Department of Mathematics\n",
"University of Kaiserslautern\n",
"67653 Kaiserslautern\n",
"Germany" ] ),
Place := "Kaiserslautern",
Institution := "University of Kaiserslautern"
),
rec(
LastName := "Gutsche",
FirstNames := "Sebastian",
IsAuthor := true,
IsMaintainer := false,
Email := "[email protected]",
WWWHome := "http://wwwb.math.rwth-aachen.de/~gutsche/",
PostalAddress := Concatenation( [
"Sebastian Gutsche\n",
"Lehrstuhl B fuer Mathematik, RWTH Aachen\n",
"Templergraben 64\n",
"52062 Aachen\n",
"Germany" ] ),
Place := "Aachen",
Institution := "RWTH Aachen University"
),
rec(
LastName := "Lange-Hegermann",
FirstNames := "Markus",
IsAuthor := true,
IsMaintainer := true,
Email := "[email protected]",
WWWHome := "http://wwwb.math.rwth-aachen.de/~markus/",
PostalAddress := Concatenation( [
"Markus Lange-Hegermann\n",
"Lehrstuhl B fuer Mathematik, RWTH Aachen\n",
"Templergraben 64\n",
"52062 Aachen\n",
"Germany" ] ),
Place := "Aachen",
Institution := "RWTH Aachen University"
),
# provide such a record for each author and/or maintainer ...
],
## Status information. Currently the following cases are recognized:
## "accepted" for successfully refereed packages
## "deposited" for packages for which the GAP developers agreed
## to distribute them with the core GAP system
## "dev" for development versions of packages
## "other" for all other packages
##
# Status := "accepted",
Status := "deposited",
## You must provide the next two entries if and only if the status is
## "accepted" because is was successfully refereed:
# format: 'name (place)'
# CommunicatedBy := "Mike Atkinson (St. Andrews)",
#CommunicatedBy := "",
# format: mm/yyyy
# AcceptDate := "08/1999",
#AcceptDate := "",
## For a central overview of all packages and a collection of all package
## archives it is necessary to have two files accessible which should be
## contained in each package:
## - A README file, containing a short abstract about the package
## content and installation instructions.
## - The PackageInfo.g file you are currently reading or editing!
## You must specify URLs for these two files, these allow to automate
## the updating of package information on the GAP Website, and inclusion
## and updating of the package in the GAP distribution.
#
README_URL :=
"http://homalg.math.rwth-aachen.de/~barakat/homalg-project/homalg/README.homalg",
PackageInfoURL :=
"http://homalg.math.rwth-aachen.de/~barakat/homalg-project/homalg/PackageInfo.g",
## Here you must provide a short abstract explaining the package content
## in HTML format (used on the package overview Web page) and an URL
## for a Webpage with more detailed information about the package
## (not more than a few lines, less is ok):
## Please, use '<span class="pkgname">GAP</span>' and
## '<span class="pkgname">MyPKG</span>' for specifing package names.
##
# AbstractHTML := "This package provides a collection of functions for \
# computing the Smith normal form of integer matrices and some related \
# utilities.",
#AbstractHTML :=
# "The <span class=\"pkgname\">Example</span> package, as its name suggests, \
# is an example of how to create a <span class=\"pkgname\">GAP</span> \
# package. It has little functionality except for being a package",
#
AbstractHTML :=
"A homological algebra meta-package for computable Abelian categories",
PackageWWWHome := "http://homalg.math.rwth-aachen.de/index.php/core-packages/homalg-package",
#
## Here is the information on the help books of the package, used for
## loading into GAP's online help and maybe for an online copy of the
## documentation on the GAP website.
##
## For the online help the following is needed:
## - the name of the book (.BookName)
## - a long title, shown by ?books (.LongTitle, optional)
## - the path to the manual.six file for this book (.SixFile)
## - a decision if the book should be (auto)loaded, probably 'true'
## (.Autoload)
##
## For an online version on a Web page further entries are needed,
## if possible, provide an HTML- and a PDF-version:
## - if there is an HTML-version the path to the start file,
## relative to the package home directory (.HTMLStart)
## - if there is a PDF-version the path to the .pdf-file,
## relative to the package home directory (.PDFFile)
## - give the paths to the files inside your package directory
## which are needed for the online manual (either as URL .Archive
## if you pack them into a separate archive, or as list
## .ArchiveURLSubset of directory and file names which should be
## copied from your package archive, given in .ArchiveURL above
##
## For links to other GAP or package manuals you can assume a relative
## position of the files as in a standard GAP installation.
##
# in case of several help books give a list of such records here:
PackageDoc := rec(
# use same as in GAP
BookName := "homalg",
# format/extension can be one of .zoo, .tar.gz, .tar.bz2, -win.zip
ArchiveURLSubset := ["doc"],
HTMLStart := "doc/chap0.html",
PDFFile := "doc/manual.pdf",
# the path to the .six file used by GAP's help system
SixFile := "doc/manual.six",
# a longer title of the book, this together with the book name should
# fit on a single text line (appears with the '?books' command in GAP)
# LongTitle := "Elementary Divisors of Integer Matrices",
LongTitle := "A Meta-Package for Homological Algebra",
# Should this help book be autoloaded when GAP starts up? This should
# usually be 'true', otherwise say 'false'.
Autoload := false
),
## Are there restrictions on the operating system for this package? Or does
## the package need other packages to be available?
Dependencies := rec(
# GAP version, use version strings for specifying exact versions,
# prepend a '>=' for specifying a least version.
GAP := ">=4.4",
# list of pairs [package name, (least) version], package name is case
# insensitive, least version denoted with '>=' prepended to version string.
# without these, the package will not load
NeededOtherPackages := [
[ "ToolsForHomalg", ">=2012.10.27" ],
[ "GAPDoc", ">= 1.0" ] ],
# without these the package will issue a warning while loading
# SuggestedOtherPackages := [],
SuggestedOtherPackages := [ ],
# needed external conditions (programs, operating system, ...) provide
# just strings as text or
# pairs [text, URL] where URL provides further information
# about that point.
# (no automatic test will be done for this, do this in your
# 'AvailabilityTest' function below)
# ExternalConditions := []
ExternalConditions := []
),
## Provide a test function for the availability of this package.
## For packages which will not fully work, use 'Info(InfoWarning, 1,
## ".....")' statements. For packages containing nothing but GAP code,
## just say 'ReturnTrue' here.
## With the new package loading mechanism (GAP >=4.4) the availability
## tests of other packages, as given under .Dependencies above, will be
## done automatically and need not be included in this function.
#AvailabilityTest := ReturnTrue,
AvailabilityTest := function()
return true;
end,
## The LoadPackage mechanism can produce a default banner from the info
## in this file. If you are not happy with it, you can provide a string
## here that is used as a banner. GAP decides when the banner is shown and
## when it is not shown. *optional* (note the ~-syntax in this example)
BannerString := Concatenation(
"----------------------------------------------------------------\n",
"Loading homalg ", ~.Version, "\n",
"by ", ~.Persons[1].FirstNames, " ", ~.Persons[1].LastName,
" (", ~.Persons[1].WWWHome, ")\n",
" ", ~.Persons[2].FirstNames, " ", ~.Persons[2].LastName,
" (", ~.Persons[2].WWWHome, ")\n",
" ", ~.Persons[3].FirstNames, " ", ~.Persons[3].LastName,
" (", ~.Persons[3].WWWHome, ")\n",
"Type:\n",
" ?homalg: ## for the contents of the manual\n",
" ?homalg:x ## for chapter/section/topic x\n",
" ExamplesForHomalg(); ## for a guide to create a ring\n",
"----------------------------------------------------------------\n" ),
## Suggest here if the package should be *automatically loaded* when GAP is
## started. This should usually be 'false'. Say 'true' only if your package
## provides some improvements of the GAP library which are likely to enhance
## the overall system performance for many users.
Autoload := false,
## *Optional*, but recommended: path relative to package root to a file which
## contains as many tests of the package functionality as sensible.
#TestFile := "tst/testall.g",
## *Optional*: Here you can list some keyword related to the topic
## of the package.
# Keywords := ["Smith normal form", "p-adic", "rational matrix inversion"]
Keywords := ["homological", "filtration", "bicomplex", "spectral sequence", "Grothendieck", "functor"]
));