Commit Graph

738 Commits

Author SHA1 Message Date
Lars Hjemli
97b3d25262 cgit.c: allow repo.*-filter options to unset the current default
If e.g. repo.commit-filter is specified as an empty string, this
is now properly handled as disabling the global commit-filter setting
for the current repository.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-08-09 13:39:44 +02:00
Lars Hjemli
e976df2795 Add support for repo.commit-filter and repo.source-filter
These options can be used to override the default commit- and source-
filter settings per repository.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-08-09 13:22:00 +02:00
Martin Szulecki
b4c3562f57 Expose file extension in tree lists as class to allow nicer tree styling
Signed-off-by: Martin Szulecki <opensuse@sukimashita.com>
2009-08-08 14:23:34 +02:00
Martin Szulecki
2f56e390f0 Introduce noplainemail option to hide email adresses from spambots
Signed-off-by: Martin Szulecki <opensuse@sukimashita.com>
2009-08-08 14:23:28 +02:00
Lars Hjemli
f35db1cd2b ui-commit: add support for 'commit-filter' option
This new option specifies a filter which is executed on the commit
message, i.e. the commit message is written to the filters STDIN and
the filters STDOUT is included verbatim as the commit message.

This can be used to implement commit linking by creating a simple
shell script in e.g. /usr/bin/cgit-commit-filter.sh like this:

#/bin/sh
sed -re 's|\b([0-9a-fA-F]{6,40})\b|<a href="./?id=\1">\1</a>|g'

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-07-31 17:42:57 +02:00
Lars Hjemli
46b7abed99 ui-tree: add support for source-filter option
This new option is used to specify an external command which will be
executed when displaying blob content in the tree view. Blob content
will be written to STDIN of the filter and STDOUT from the filter
will be included verbatim in the html output from cgit. The file name
of the blob will be passed as the only argument to the filter command.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-07-31 17:41:21 +02:00
Lars Hjemli
18dfbdc099 ui-snapshot: use cgit_{open|close}_filter() to execute compressors
This simplifies the code in ui-snapshot.c and makes the test-suite
verify the new filter-functions.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-07-31 17:40:13 +02:00
Lars Hjemli
d6f6072560 Add generic filter/plugin infrastructure
The functions cgit_open_filter() and cgit_close_filter() can be used to
execute filters on the output stream from cgit.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-07-31 17:39:51 +02:00
Lars Hjemli
c4d46c7035 Add support for mime type registration and lookup
This patch makes it possible to register mappings from filename
extension to mime type in cgitrc and use this mapping when returning
blob content in `plain` view.

The reason for adding this mapping to cgitrc (as opposed to parsing
something like /etc/mime.types) is to allow quick lookup of a limited
number of filename extensions (/etc/mime-types on my machine currently
contains over 700 entries).

NB: A nice addition to this patch would be to parse /etc/mime.types
when `plain` view is requested for a file with an extension for which
there is no mapping registered in cgitrc.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-07-25 12:55:15 +02:00
Lars Hjemli
286a905842 Merge branch 'lh/embedded'
Conflicts:
	cgitrc.5.txt
	ui-shared.c
2009-07-25 12:29:22 +02:00
Lars Hjemli
7a8b3b4104 cgit.h: keep config flags sorted
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-07-25 12:25:06 +02:00
Lars Hjemli
86b753cbc0 cgitrc.5.txt: document 'embedded' and 'noheader'
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-07-25 12:23:30 +02:00
Lars Hjemli
ef0c6aadf7 Add support for 'noheader' option
This option can be used to disable the standard cgit page header, which
might be useful in combination with the 'embedded' option.

Suggested-by: Mark Constable <markc@renta.net>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-07-25 12:19:31 +02:00
Lars Hjemli
542f6a4330 Merge branch 'ml/head-include' 2009-07-25 12:04:08 +02:00
Lars Hjemli
f618e8f717 cgitrc.5.txt: document 'head-include'
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-07-25 12:03:54 +02:00
Lars Hjemli
681fdc4547 Merge branch 'plain-etag'
Conflicts:
	ui-shared.c
2009-07-25 11:59:22 +02:00
Lars Hjemli
7e5c048505 Merge branch 'rt/plain-binary'
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-07-25 11:52:07 +02:00
Lars Hjemli
596eb8fcb0 ui-blob: return 'application/octet-stream' for binary blobs
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-07-25 11:51:19 +02:00
Remko Tronçon
7d77008042 ui-plain: Return 'application/octet-stream' for binary files.
Signed-off-by: Remko Tronçon <git@el-tramo.be>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-07-25 11:46:34 +02:00
Lars Hjemli
fbe091a716 Merge branch 'do/https'
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-07-25 11:41:06 +02:00
Diego Ongaro
694dd43886 use cgit_httpscheme() for atom feed 2009-06-11 00:01:32 -05:00
Diego Ongaro
87a89aed41 add cgit_httpscheme() -> http:// or https:// 2009-06-11 00:00:35 -05:00
Lars Hjemli
e429fb0cca Return http statuscode 404 on unknown branch
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-06-07 20:43:08 +02:00
Mark Lodato
b5a3a20496 Add head-include configuration option.
This patch adds an option to the configuration file, "head-include",
which works just like "header" or "footer", except the content is put
into the HTML's <head> tag.
2009-06-07 18:55:44 +02:00
Lars Hjemli
45e7fcecc1 Merge branch 'stable' 2009-03-15 09:32:46 +01:00
Lars Hjemli
fdd559abd6 CGIT 0.8.2.1
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-03-15 09:31:05 +01:00
Lars Hjemli
290c2a752f Fix doc-related glitches in Makefile and .gitignore
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-03-15 09:27:54 +01:00
Lars Hjemli
780d2d9859 Merge branch 'stable' 2009-03-15 09:06:20 +01:00
Lars Hjemli
942a4c2001 Merge branch 'asciidoc' 2009-03-15 09:05:49 +01:00
Lars Hjemli
6fddad7251 ui-snapshot: avoid segfault when no filename is specified
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-03-15 08:57:33 +01:00
Eric Wong
112973615a fix segfault when displaying empty blobs
When size is zero, subtracting one from it turns it into
ULONG_MAX which causes an out-of-bounds access on buf.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-03-15 08:46:15 +01:00
Lars Hjemli
3ff58ddd51 Add support for HEAD requests
This is a quick 'n dirty hack which makes cgit honor HEAD requests.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-02-19 23:24:15 +01:00
Lars Hjemli
488a214a81 Add support for ETag in 'plain' view
When downloading a blob identified by its path, the client might want
to know if the blob has been modified since a previous download of the
same path. To this end, an ETag containing the blob SHA1 seems to be
ideal.

Todo: add support for HEAD requests...

Suggested-by: Owen Taylor <otaylor@redhat.com>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-02-19 22:38:36 +01:00
Lars Hjemli
6063e7b553 ui-tree: escape ascii-text properly in hexdump view
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-02-12 11:26:14 +01:00
Lars Hjemli
5e57cb24fc Makefile: add doc-related targets
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-02-12 10:53:31 +01:00
Lars Hjemli
6d2067aed3 Add cgit-doc.css
This css is used to tweak the display of asciidoc-generated html for
cgitrc.5.txt.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-02-12 10:24:25 +01:00
Lars Hjemli
c54f8a5d0c cgitrc.5.txt: un-indent the name section
Otherwise, this section is treated as a preformatted, literal block.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-02-12 10:12:05 +01:00
Lars Hjemli
b875a9eeda cgitrc.5.txt: wrap the example file in an asciidoc LiteralBlock
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-02-12 10:02:09 +01:00
Lars Hjemli
d3b2933cfe cgitrc.5.txt: make the cgitrc options a valid asciidoc labeled list
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-02-12 09:58:28 +01:00
Matt McCormick (thewtex)
9f9ede3d92 make cgitrc.5.txt asciidoc manpage compatible
According to the instructions and requirements here:
http://www.methods.co.nz/asciidoc/chunked/ar01s20.html
2009-02-12 09:37:14 +01:00
Lars Hjemli
0cbb50841a Add support for an 'embedded' option in cgitrc
When activated, cgit will neither generate http headers nor any 'framing'
html elements (like <html> and <body>). Also, all page content is now
wrapped in a <div id='cgit'> element to make it easier to select the
correct cgit classes when embedded/themed.

Suggested-by: Matt Sealey <matt@genesi-usa.com>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-02-02 08:11:29 +01:00
Lars Hjemli
8cc0287123 CGIT 0.8.2
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-02-01 19:31:37 +01:00
Lars Hjemli
8cbbb64481 Use GIT-1.6.1.1
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-02-01 19:30:16 +01:00
Lars Hjemli
5e447b1ed1 Merge branch 'lh/binary' 2009-02-01 19:29:47 +01:00
Lars Hjemli
481ce5e298 shared.c: avoid SEGFAULT when checking for binary buffers
Before calling buffer_is_binary() we need to verify that the buffer
is valid.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-02-01 19:29:24 +01:00
Lars Hjemli
0b3c746ba8 Merge branch 'lh/header' 2009-02-01 19:17:52 +01:00
Lars Hjemli
ae1d4d75b2 ui-tree: show hexdump of binary blobs
This teaches ui-tree to detect binary blobs and display them similar
to `hexdump -C` (only wider).

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-01-31 17:45:48 +01:00
Lars Hjemli
c495cf02ba Handle binary files in diffs
This teaches all diff-related operations (i.e. ui-log, ui-diff and ui-patch)
how to handle binary files.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2009-01-31 10:40:40 +01:00
Lars Hjemli
d6174b7aab Merge branch 'stable' 2009-01-29 22:21:24 +01:00
Lars Hjemli
7efcef00b5 html.c: use correct escaping in html attributes
First, an apostrophe is not a quote. Second, we also need to escape
quotes. And finally, quotes are encoded as '&quot;', not '&quote;'.

Sighned-off-by: Lars Hjemli <hjemli@gmail.com>
2009-01-29 22:21:15 +01:00