aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| * Remove global and obsolete cgit_cmdLars Hjemli2008-03-252-2/+1
| | | | | | | | | | | | This variable was obsoleted by cmd.c. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Makefile: copy the QUIET constructs from the Makefile in git.gitLars Hjemli2008-03-251-5/+31
| | | | | | | | | | | | | | These constructs were introduced by Shawn O. Pearce in commit 74f2b2a8d006a49e1be7e30731c2f7365d2741d1. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Move cgit_version from shared.c to cgit.cLars Hjemli2008-03-243-3/+5
| | | | | | | | | | | | | | With the matching Makefile change, this makes sure that only cgit.o and cgit proper needs to be rebuildt when VERSION has been modified. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Makefile: autobuild dependency rulesLars Hjemli2008-03-242-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This uses gcc to generate dependency rules for each `.o` file, based on the corresponding `.c` file, into a new set of `.d` files (which are also defined to depend on the same set of source files as their `.o` files). Result: * all objectfile dependencies are correctly calculated * only the necessary dependencies are recalculated when a sourcefile is updated Inspiration for the build rules: * http://www.gnu.org/software/make/manual/make.html#Automatic-Prerequisites * http://make.paulandlesley.org/autodep.html Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Initial Makefile cleanupLars Hjemli2008-03-241-7/+22
| | | | | | | | | | | | | | Sort the list of object files to improve readability/mergeability and remove manual dependency information which will soon be generated automatically. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Move non-generic functions from shared.c to cgit.cLars Hjemli2008-03-243-157/+155
| | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Add ui-shared.hLars Hjemli2008-03-2413-32/+47
| | | | | | | | | | | | | | This is finally a proper headerfile for the shared ui-functions which used to reside in cgit.h Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Add separate header-files for each page/viewLars Hjemli2008-03-2415-189/+257
| | | | | | | | | | | | Yet another step towards removing cgit.h. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Refactor snapshot supportLars Hjemli2008-03-244-86/+90
| | | | | | | | | | | | | | | | | | The snapshot support needs to be split between output- and config-related functions to get the layering between shared.c and ui-*.c right. There is also some codestyle-issues which needs fixing to make the snapshot functions more similar to the rest of the cgit code. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Add command dispatcherLars Hjemli2008-03-247-110/+169
| | | | | | | | | | | | | | This simplifies the code in cgit.c and makes it easier to extend cgit with new pages/commands. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Remove obsolete cacheitem parameter to ui-functionsLars Hjemli2008-03-246-17/+16
| | | | | | | | | | | | This parameter hasn't been used for a very long time... Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Add struct cgit_page to cgit_contextLars Hjemli2008-03-248-88/+113
| | | | | | | | | | | | | | | | This struct is used when generating http headers, and as such is another small step towards the goal of the whole cleanup series; to invoke each page/view function with a function pointer. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Introduce html.hLars Hjemli2008-03-1817-46/+71
| | | | | | | | | | | | | | | | All html-functions can be quite easily separated from the rest of cgit, so lets do it; the only issue was html_filemode which uses some git-defined macros so the function is moved into ui-shared.c::cgit_print_filemode(). Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Improve initialization of git directoryLars Hjemli2008-02-162-10/+9
| | | | | | | | | | | | | | Using the functions offered by libgit feels like the right thing to do. Also, make sure that config errors gets properly reported. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Move cgit_repo into cgit_contextLars Hjemli2008-02-1611-103/+101
| | | | | | | | | | | | | | | | This removes the global variable which is used to keep track of the currently selected repository, and adds a new variable in the cgit_context structure. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Add all config variables into struct cgit_contextLars Hjemli2008-02-167-175/+166
| | | | | | | | | | | | | | | | This removes another big set of global variables, and introduces the cgit_prepare_context() function which populates a context-variable with compile-time default values. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Introduce struct cgit_contextLars Hjemli2008-02-1613-164/+156
| | | | | | | | | | | | | | | | | | This struct will hold all the cgit runtime information currently found in a multitude of global variables. The first cleanup removes all querystring-related variables. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Use GIT-1.5.5-rc2Lars Hjemli2008-04-011-0/+0
| |
* | Use GIT-1.5.5.rc1Lars Hjemli2008-03-232-1/+1
| |
* | Fix segfault in patch view for root commitLars Hjemli2008-03-172-1/+42
| | | | | | | | | | | | | | | | | | | | The code for patch view assumed the current commit would always have a parent, which made cgit segfault when that wasn't the case. This fixes the bug and adds a test-script for patch view which includes a test for the inital commit. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Use GIT-1.5.4.4Lars Hjemli2008-03-172-1/+1
| |
* | tests/setup.sh: cleanup test script output and loggingLars Hjemli2008-02-241-2/+8
| | | | | | | | | | | | | | Log the complete output from each test-script in test-output.log and tell the user about the logfile when a test-script fails. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | t0010-validate.sh: return on cgit errorsLars Hjemli2008-02-241-1/+4
| | | | | | | | | | | | | | | | | | | | The earlier segfault in cgit passed by unnoticed by this test-script due to the pipe between cgit and sed. There might be a more elegant solution to this problem, but my shellscript- foo is weak. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Make output from `make test` more readableLars Hjemli2008-02-241-2/+2
| | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Brown paper bag: don't use `grep -v`Lars Hjemli2008-02-242-5/+5
| | | | | | | | | | | | | | | | | | | | | | For some inexplicable reason I'd gotten the semantics of `grep -v` totally backwards, thinking it somehow would make the exitcode from grep indicate the non-match of the specified pattern. This fixes the broken tests and gives me a valuable lession about shell programming at the same time. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Add regression-test for description-less reposLars Hjemli2008-02-242-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The segfault fixed in commit eacde43d7184452e1fdc90b982b531f1f5239923 was triggered when the html-functions manipulated string literals. One callpatch which could trigger the bug is in ui-repolist.c when repo descriptions are passed to html_ntxt(): if a repo is lacking a description, the literal string "[no description]" is used. This patch changes test/setup.sh such that the first repo has no description, and adds tests for both "[no description]" and "the bar repo" (description of the other repo) to tests/t0101-index.sh, which should be enought to catch regressions in these functions. Noticed-by: Hiroki Hattori <seagull.kamome@gmail.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Merge branch 'stable'Lars Hjemli2008-02-231-15/+5
|\ \ | |/ |/| | | | | | | | | * stable: Fix segfault Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Fix segfaultHiroki Hattori2008-02-231-15/+5
| | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Use GIT-1.5.4.1Lars Hjemli2008-02-162-1/+1
| |
* | Use GIT-1.5.4Lars Hjemli2008-02-022-1/+1
| |
* | Use GIT-1.5.4.rc5Lars Hjemli2008-01-282-1/+1
| |
* | Use GIT-1.5.4.rc4Lars Hjemli2008-01-213-2/+2
| |
* | Merge branch 'stable'Lars Hjemli2008-01-134-6/+7
|\| | | | | | | | | | | | | | | * stable: CGIT 0.7.2 Use GIT-1.5.3.8 Compare string lengths when parsing the snapshot mask Default repo description to "[no description]"
| * CGIT 0.7.2v0.7.2Lars Hjemli2008-01-101-1/+1
| | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Use GIT-1.5.3.8Lars Hjemli2008-01-102-1/+1
| |
| * Compare string lengths when parsing the snapshot maskLars Hjemli2007-12-031-3/+4
| | | | | | | | | | | | | | | | | | | | We used to rely on the result from strncmp() without comparing the length of the strings involved. Even worse, any single-character format specifier would enable zip-format due to the optional '.'-prefix since the length of the mask then would become zero. Noticed-by: Evan Martin <sys@neugierig.org> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Default repo description to "[no description]"Evan Martin2007-12-031-1/+1
| | | | | | | | | | | | | | Otherwise, when you leave out a description for a repository, the NULL default causes cgit to print out titles like "cgit - (null)". Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Check for NULL-subject in patch viewLars Hjemli2008-01-101-1/+6
| | | | | | | | | | | | While at it, make sure the commit message ends with a '\n'. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Handle missing default branch and error out on invalid branch namesLars Hjemli2008-01-041-4/+58
| | | | | | | | | | | | | | | | | | | | When no branch is specified and the repository does not have a default branch, use the first branch. Also, print sensible errormessages when the repository does not contain any branches and when invalid branchnames are specified. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Add plain patch viewLars Hjemli2007-12-116-2/+122
| | | | | | | | | | | | | | | | | | | | The new view mimics the output from `git format-patch`, making it possible to cherry-pick directly from cgit with something like `curl $url | git am`. Inspired by a patch to `git-apply` by Mike Hommey: http://thread.gmane.org/gmane.comp.version-control.git/67611/focus=67610 Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Add support for automatic and custom clone urlsLars Hjemli2007-12-034-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | This adds support for two new parameters to cgitrc: clone-prefix and repo.clone-url. If clone-prefix is specified, all repos will get a clone url printed in the sidebar; the url is generated by clone-prefix + repo.url. Additionally, each repo can specify repo.clone-url which will override any such auto-generated url. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Merge branch 'stable'Lars Hjemli2007-12-022-3/+7
|\| | | | | | | | | | | * stable: Handle missing timestamp in commit/tag objects Set commit date on snapshot contents
| * Handle missing timestamp in commit/tag objectsLars Hjemli2007-12-022-3/+7
| | | | | | | | | | | | | | | | | | | | When a commit or tag lacks author/committer/tagger timestamp, do not skip the next line in the commit/tag object. Also, do not bother to print timestamps with value 0 as it is close to certain to be bogus. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Set commit date on snapshot contentsLars Hjemli2007-11-111-0/+1
| | | | | | | | | | | | | | | | The testsuite revealed that cgit snapshots don't set any useful timestamp on the files contained in the snapshot. Cherry-picked-from: 2ff33a8a0405b420cd75e0e207c7efeecd6f130b Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Add cell-spacing in htmlLars Hjemli2007-11-161-1/+1
| | | | | | | | | | | | There are some browsers which don't support the border-spacing property Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Use tables for page layoutLars Hjemli2007-11-162-30/+41
| | | | | | | | | | | | | | It feels like the Right Thing, and it fixes some rendering problems in a much used webbrowser. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Gimp my logoLars Hjemli2007-11-161-0/+0
| | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Add support for "robots" meta-tagLars Hjemli2007-11-114-0/+11
| | | | | | | | | | | | | | | | | | With this change, cgit will start to generate the "robots" meta-tag, using a default value of "index, nofollow". The default value can be modified with a new cgitrc variable, "robots". Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Generate valid html for "downloads" menu headerLars Hjemli2007-11-111-1/+1
| | | | | | | | | | Noticed-by: http://validator.w3.org Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Merge branch 'lh/testsuite'Lars Hjemli2007-11-1122-25/+334
|\ \ | | | | | | | | | | | | | | | | | | * lh/testsuite: Set commit date on snapshot contents Fix html error detected by test-suite Create initial testsuite