Commit Graph
100 Commits
Author SHA1 Message Date
Lars Hjemli 5293c8b799 ui-repolist.c: fallback to "master" if no default branch is specified
When looking for the modtime of a repo we used to rely on repo.defbranch
having a value. This is no longer true so this patch provides a default
value when needed.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-07-19 09:34:18 +00:00
Lars Hjemli 8d7c2ec295 cgit.c: use resolve_ref() to guess_defbranch()
The resolve_ref() function handles reading of git- and filesystem
symbolic links (including proper whitespace trimming) and packed refs.
There's no point in reimplementing this function in cgit.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-06-20 23:23:57 +00:00
Lars Hjemli e95c70d4ea Only guess default branch when a repo page is requested
There's no need to invoke guess_defbranch() for each repo during
scan-path, since repo.defbranch is only used when repo content is
being displayed.

Also, some users prefer to register their projects manually in cgitrc
but they got no benefit from the new repo.defbranch handling.

This patch tries to rectify these issues by only invoking guess_defbranch()
when needed, regardless of how the repo was registered.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-06-20 20:59:10 +02:00
Lars Hjemli b0d72da028 Merge branch 'stable' 2011-06-18 14:59:51 +02:00
Lars Hjemli 9900ac022e cgit.c: improve error message when git repo cannot be accessed
The current 'Not a git repository' error message is not very helpful,
since it doesn't state the cause of the problem.

This patch uses errno to provide a hint of the underlying problem. It
would have been even better to give the exact cause (e.g. for ENOENT it
would be nice to know which file/directory is missing), but that would
require reimplementing setup_git_directory_gently() which seems a bit
overkill.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-06-18 14:59:01 +02:00
Lars Hjemli 8729d251a9 Merge branch 'stable' 2011-06-15 10:40:00 +02:00
Lars Hjemli 46ca32e043 cgitrc.5.txt: document repo.module-link
The global module-link option can be overridden per repo, but this has
never been documented.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-06-15 10:39:43 +02:00
Lars Hjemli 1b1bf635b5 Merge branch 'lh/clone-url' 2011-06-13 23:05:10 +00:00
Lars Hjemli a1429dbc89 cgit.c: add 'clone-url' setting with support for macro expansion
The current 'clone-prefix' setting has some known issues:
* All repos get the same 'clone-prefix' value since the setting is not
  adopted during repo registration (in cgitrc, or during scan-path traversal),
  but only when the setting is used.
* The generated clone-urls for a repo is a combination of 'clone-prefix', a
  slash and the repo url. This doesn't work well with e.g. ssh-style urls
  like 'git@example.org:repo.git', since the inserted slash will make the
  repo relative to the filesystem root.
* If 'remove-suffix' is enabled, the generated clone-urls will not work for
  cloning (except for http-urls to cgit itself) since they miss the '.git'
  suffix.

The new 'clone-url' setting is designed to avoid the mentioned issues:
* Each repo adopts the default 'clone-url' when the repo is defined. This
  allows different groups of repos to adopt different values.
* The clone-urls for a repo is generated by expanding environment variables
  in a string template without inserting arbitrary characters, hence any
  kind of clone-url can be generated.
* Macro expansion also eases the 'remove-suffix' pain since it's now
  possible to define e.g. 'clone-url=git://foo.org/$CGIT_REPO_URL.git' for
  a set of repos. A furter improvement would be to define e.g.
  $CGIT_REPO_SUFFIX to '.git' for all repos which had their url prettified,
  or to store the original $CGIT_REPO_URL in e.g. $CGIT_REPO_REAL_URL before
  suffix removal.

Reviewed-by: Ferry Huberts <mailings@hupie.com>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-06-13 23:04:30 +00:00
Lars Hjemli 3ec6b30950 cgit.c: always setup cgit repo environment variables
When cgit learned to setup environment variables for certain repo
settings before invoking a filter process, the setup occurred inside
cgit_open_filter().

This patch moves the setup out of cgit_open_filter() and into
prepare_repo_cmd() to prepare for additional uses of these variables.

Reviewed-by: Ferry Huberts <mailings@hupie.com>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-06-13 23:03:46 +00:00
Lars Hjemli b88cda6e5b cgitrc.5.txt: reformat the "FILTER API" section
This patch makes the generated man-page for the filer api section more
similar to the other sections. Also, the bulleted list of environment
variables wasn't rendered correctly (with asciidoc 8.5.2), without an
empty line before the first item.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-06-13 22:34:13 +00:00
Lars Hjemli 859d106d5e Merge branch 'stable'
Conflicts:
	cgitrc.5.txt
2011-06-13 22:02:02 +00:00
Lars Hjemli ef13e5eafe cgitrc.5.txt: describe macro expansion of cgitrc options
This is a new feature in cgit-0.9 which was formerly undocumented.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-06-13 21:59:50 +00:00
Lars Hjemli be6991c1e4 Merge branch 'stable' 2011-06-13 13:28:18 +00:00
Lars Hjemli 2a0c9dcbe8 README: update some stale information/add some new
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-06-13 13:27:32 +00:00
Lars Hjemli 19e371c557 Merge branch 'stable' 2011-06-13 12:41:01 +00:00
Lars Hjemli 9782752223 CGIT 0.9.0.1
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-06-13 12:37:04 +00:00
Lars Hjemli fb3b94710f Merge branch 'stable' 2011-06-12 21:23:14 +00:00
Lars Hjemli 7f88d20823 ui-plain.c: fix html and links generated by print_dir() and print_dir_entry()
This patch fixes the following issues:
* the base argument usually isn't zero-terminated, so printing base
  without considering baselen will usually generate random garbage
* when the current url represents a directory but doesn't end in a slash,
  relative urls would be incorrect
* using unescaped paths allows XSS

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-06-12 21:21:30 +00:00
Lars Hjemli f8f6e1fe78 Merge branch 'stable' 2011-06-06 19:12:21 +00:00
Lars Hjemli 7eb9f9e980 Merge branch 'stable' 2011-06-02 10:33:23 +00:00
Lars Hjemli d885158f6a ui-log.c: do not link from age column
The link url wasn't properly escaped, and since the link was identical
to the one used on the commit message it didn't serve any special purpose.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-06-02 10:30:26 +00:00
Lars Hjemli 2aabeaf834 ui-snapshot.c: remove debug cruft
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-06-02 10:26:41 +00:00
Lars Hjemli 9acd1cf137 ui-stats.c: fix invalid html
Found by http://validator.w3.org.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-05-30 22:21:22 +00:00
Lars Hjemli 52fbcf2ffa Merge branch 'stable' 2011-05-30 23:57:25 +02:00
Lars Hjemli 2ffeecb7a6 Merge branch 'lh/panel' 2011-05-23 23:29:24 +02:00
Lars Hjemli ab350a77b1 Merge branch 'fh/filter-api'
Conflicts:
	cgit.c
2011-05-23 23:28:38 +02:00
Lars Hjemli 652a5a18db Merge branch 'stable' 2011-05-23 23:26:10 +02:00
Lars Hjemli c8ea73caab ui-repolist.c: do not return random/stale data from read_agefile
When git/date.c:parse_date() cannot parse its input it returns -1. But
read_agefile() checks if the result is different from zero, essentialy
returning random data from the date buffer when parsing fails. This
patch fixes the issue by verifying that the result from parse_date()
is positive.

Noticed-by: Julius Plenz <plenz@cis.fu-berlin.de>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-05-23 23:17:10 +02:00
Lars Hjemli dc1a8eadd4 shared.c: do not modify const memory
Noticed-by: zhongjj <zhongjj@lemote.com>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-05-23 22:58:35 +02:00
Lars Hjemli 084ca50972 tests: add tests for links with space in path and/or args
These tests tries to detect bad links in various pages. On the log page,
there currently exists links which are not properly escaped due to the
use of cgit_fileurl() when building the link. For now, this bug is simply
tagged as such.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-05-23 22:58:35 +02:00
Lars Hjemli afe04daa33 tests/setup.sh: add support for known bugs
This patch makes it possible to add tests for known bugs without aborting
the testrun.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-05-23 22:58:35 +02:00
Lars Hjemli 4837fddc35 Merge branch 'dm/disable-clone' 2011-05-14 20:00:33 +02:00
Lars Hjemli 568d8d3fd3 Merge branch 'stable' 2011-03-26 15:22:35 +01:00
Lars Hjemli 4d2a303c3e cgitrc.5: tar.xz is a supported snapshot format
When tar.xz support was added in 0642435fed (2009-12-08: Add
.tar.xz-snapshot support), cgitrc.5 was not updated to match. This
patch fixes the issue.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-03-26 13:40:20 +01:00
Lars Hjemli c2b58ed853 shared.c: use execvp() to execute filter commands
This reintroduces the use of execvp(), since the filter commands doesn't
always contain an absolute path (i.e. snapshot compression filters).

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-03-26 11:27:29 +01:00
Lars Hjemli 1b5c336cc9 ui-stats.c: create a control panel for stat options
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-03-07 00:00:24 +01:00
Lars Hjemli 962a24892f ui-diff.c: create a control panel for diff options
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-03-06 23:59:56 +01:00
Lars Hjemli 1a64fd2f83 html.c: add html_intoption()
This is similar to html_option, but for int values.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-03-06 23:57:26 +01:00
Lars Hjemli cc59ee5026 CGIT 0.9
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-03-05 14:23:12 +01:00
Lars Hjemli b9025b5c78 Update README 2011-03-05 14:21:47 +01:00
Lars Hjemli 1b09cbd303 Merge branch 'stable' 2011-03-05 14:01:59 +01:00
Lars Hjemli 9e849950dc CGIT 0.8.3.5
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-03-05 13:52:39 +01:00
Lars Hjemli d0cb8413ff Avoid trailing slash in virtual-root
When setting virtual-root from cgitrc, care is taken to avoid trailing
slashes. But when no virtual-root setting is specified, SCRIPT_FILE
from the web server is used without similar checks. This patch fixes the
inconsistency, which could lead to double-slashes in generated links.

Noticed-by: Wouter Van Hemel <wouter@duodecim.org>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-03-05 13:50:40 +01:00
Lars Hjemli 979c460e7f Merge branch 'br/misc'
* br/misc:
  Use transparent background for the cgit logo
  ssdiff: anchors for ssdiff
  implement repo.logo and repo.logo-link
2011-02-19 14:51:00 +01:00
Lars Hjemli fb9e6d1594 Merge branch 'jh/scan-path'
* jh/scan-path:
  scan_path(): Do not recurse into hidden directories by default
  scan_path(): Improve handling of inaccessible directories
2011-02-19 14:25:55 +01:00
Lars Hjemli 31e1f9af1d Merge branch 'jh/graph'
* jh/graph:
  ui-log: Move 'Age' column when commit graph is present
  ui-log: Line-wrap long commit subjects when showmsg is enabled
  ui-log: Colorize commit graph
  ui-log: Implement support for commit graphs
  ui-log: Change display of full commit messages (and notes)

Conflicts:
	cgit.css
2011-02-19 14:01:59 +01:00
Lars Hjemli e66a16cebc Merge branch 'lh/improve-range-search'
* lh/improve-range-search:
  html.c: use '+' to escape spaces in urls
  ui-log.c: improve handling of range-search argument
  Add vector utility functions
2011-02-19 14:00:59 +01:00
Lars Hjemli 286c4c0a1d Use GIT-1.7.4
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-02-19 13:55:43 +01:00
Lars Hjemli 7618cac1ee Merge branch 'tz/make-improvements' 2010-11-10 00:28:56 +01:00
Lars Hjemli c2680325f6 html.c: use '+' to escape spaces in urls
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-11-10 00:22:41 +01:00
Lars Hjemli a3c3c04bdf ui-log.c: improve handling of range-search argument
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-11-10 00:22:41 +01:00
Lars Hjemli 958a95b378 Add vector utility functions
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-11-10 00:22:41 +01:00
Lars Hjemli 53f487dd71 Makefile: avoid spurious rebuilds of git sources due to sudo make
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-11-10 00:20:50 +01:00
Lars Hjemli cda1b78ff7 Append path and branch to atom feed title
Currently all atom feeds for a repository get the same title but they
are actually unique per path and per branch.

Signed-off-by: Chris Mayo <aklhfex@gmail.com>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-11-07 16:35:54 +01:00
Lars Hjemli 69f705cf57 Merge branch 'stable'
Conflicts:
	scan-tree.c

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-11-07 16:25:23 +01:00
Lars Hjemli 5807fb79fa Makefile: add -MP option
Work around errors `make` gives when header files are removed without
the Makefile being updated.

Signed-off-by: Lynn Lin <Lynn.Lin@emc.com>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-11-07 16:13:49 +01:00
Lars Hjemli d41b2ddcb3 Merge branch 'stable'
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-09-27 08:20:42 +02:00
Lars Hjemli af492114cc CGIT 0.8.3.4
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-09-27 08:00:47 +02:00
Lars Hjemli 82a883ede7 Use GIT-1.7.3
This fixes http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2010-2542.

Noticed-by: Silvio Cesare <silvio.cesare@gmail.com>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-09-27 07:58:13 +02:00
Lars Hjemli 9043b46f85 Merge branch 'stable' 2010-09-19 20:58:15 +02:00
Lars Hjemli a9d6e6e695 Merge branch 'ml/bugfix' 2010-09-19 19:00:05 +02:00
Lars Hjemli 536c7a1eb2 Merge branch 'lh/section-from-path'
Conflicts:
	scan-tree.c
2010-09-19 18:46:17 +02:00
Lars Hjemli e76a1ea427 Merge branch 'lh/readme' 2010-09-19 18:43:58 +02:00
Lars Hjemli 857696dd3d Use GIT-1.7.3
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-09-19 14:00:57 +02:00
Lars Hjemli bf8293d319 Merge branch 'stable' 2010-09-01 12:32:57 +00:00
Lars Hjemli ba1769cb64 ui-snapshot: actually compress zip archives
Since cgit linked with git-1.6.0 all zip archives has been uncompressed.
This patch fixes the issue by specifying Z_DEFAULT_COMPRESSION.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-09-01 12:32:19 +00:00
Lars Hjemli 6940b23b9e Merge branch 'stable' 2010-08-29 17:40:51 +02:00
Lars Hjemli 797110e39d Add support for 'section-from-path' option
This option can be used to autogenerate section names during scan-path
processing.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-08-22 13:35:56 +02:00
Lars Hjemli 515edb0da3 Add support for "readme" option
The value of this option is used as the default value for repo.readme.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-08-22 13:35:47 +02:00
Lars Hjemli 6d7552bc07 Use GIT-1.7.2.2
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-08-22 13:29:57 +02:00
Lars Hjemli aec9c245e7 Merge branch 'jd/gitolite' 2010-08-04 03:10:29 +02:00
Lars Hjemli e6c960c7c0 Merge branch 'js/notes' 2010-08-04 03:10:24 +02:00
Lars Hjemli 6a8f65bf18 Merge branch 'stable' 2010-08-03 22:52:11 +02:00
Lars Hjemli 15c64c5e47 CGIT 0.8.3.3
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-08-03 22:50:02 +02:00
Lars Hjemli 3687be20bc ui-refs.c: avoid segfault on unparsed ref objects
When a ref refers to something other then a commit or tag object, cgit
could segfault when trying to display the tag info.

Noticed-by: Eugene Sajine <euguess@gmail.com>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-08-03 22:06:21 +02:00
Lars Hjemli 6821d8ea4a Merge branch 'jh/ignorews' 2010-07-18 15:03:30 +02:00
Lars Hjemli 5c5d189635 Merge branch 'lh/macros' 2010-07-18 15:03:08 +02:00
Lars Hjemli 60fcf600f5 Merge branch 'stable' 2010-07-13 21:55:47 +02:00
Lars Hjemli 6654d5b7bd Merge branch 'lh/range-search' 2010-06-22 16:16:24 +02:00
Lars Hjemli 6f92f332e6 Merge branch 'jh/context-lines'
Conflicts:
	cgit.c
	cgit.h
2010-06-22 16:16:12 +02:00
Lars Hjemli 37a24e4e39 Merge branch 'jh/path-limit'
Conflicts:
	cgit.h
	ui-commit.c
2010-06-22 16:15:48 +02:00
Lars Hjemli a579fb0256 ui-log.c: allow commit range as search expression
Inspired-by: Johan Herland <johan@herland.net>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-06-19 14:32:37 +02:00
Lars Hjemli a2cbd3c30b ui-shared.c: path-limit style nitpick
This subjectively makes the path-limit bar less visually intrusive.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-06-19 12:56:06 +02:00
Lars Hjemli c8bc3fc04c Merge branch 'stable' 2010-06-19 11:52:42 +02:00
Lars Hjemli f072bc55b0 CGIT 0.8.3.2
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-06-19 11:50:58 +02:00
Lars Hjemli c2766deb67 Merge branch 'ag/atom-fixes' 2010-06-19 11:42:12 +02:00
Lars Hjemli caf0825d97 Merge branch 'lh/noweb' 2010-06-19 11:41:32 +02:00
Lars Hjemli d6dc3aee9a Merge branch 'ml/plain-improvements-part1' 2010-06-19 11:40:34 +02:00
Lars Hjemli 9af580d8f6 Merge branch 'sn/subject-link' 2010-06-19 11:38:46 +02:00
Lars Hjemli 023d933121 Merge branch 'stable' 2010-04-08 00:50:20 +02:00
Lars Hjemli ce761fde07 shared.c: avoid memory leak during diff
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-04-08 00:48:36 +02:00
Lars Hjemli ba56a37e86 Add support for environment variable expansion
This patch teaches cgit to expand environment variables in certain
cgitrc option values (cache_root, scan-path, include) plus when
finding the location of cgitrc itself.

One use case for this feature is virtual hosting - e.g. by setting
$CGIT_CONFIG='/etc/cgitrc/$HTTP_HOST' in httpd.conf, all virtual
hosts automatically gets their own cgitrc.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-03-22 00:09:43 +01:00
Lars Hjemli ff3a3b4e2b ui-tree: add link to plain view for blobs in tree listing
Suggested-by: Robert Weidlich <mail@robertweidlich.de>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-02-28 22:18:00 +01:00
Lars Hjemli 31ba37c0a4 scan-tree: add test for noweb-file in repo dir
If such a file exists, the repo is not added to the repolist.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-02-28 18:40:02 +01:00
Lars Hjemli c151ce61d8 Use GIT-1.7.0
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-02-27 13:39:53 +01:00
Lars Hjemli 067c180435 Merge branch 'html-updates' of git://github.com/MarkLodato/cgit 2010-02-27 13:20:27 +01:00
Lars Hjemli 581a0c2a54 Optionally generate verbose parent links
The new option 'enable-subject-links' must be used to enable the verbose
parent-links in commit view.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2010-02-27 13:12:55 +01:00
Lars Hjemli 71d3ca75d1 Merge branch 'stable' 2010-02-27 12:53:27 +01:00
Lars Hjemli 547a64fbd6 Merge branch 'stable' 2009-12-12 12:09:47 +01:00