aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Move cgit_parse_query() from parsing.c to html.c as http_parse_querystring()Lars Hjemli2008-04-086-64/+68
| | | | | | This is a generic http-function. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Move function for configfile parsing into configfile.[ch]Lars Hjemli2008-03-286-78/+99
| | | | | | This is a generic function which wanted its own little object file. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* Add cache.hLars Hjemli2008-03-274-14/+25
| | | | | | | | The functions found in cache.c are only used by cgit.c, so there's no point in rebuilding all object files when the cache interface is changed. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* 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.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
| * | 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. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * | Fix html error detected by test-suiteLars Hjemli2007-11-1111-27/+37
| | | | | | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * | Create initial testsuiteLars Hjemli2007-11-1112-1/+299
|/ / | | | | | | | | | | This creates a simple testsuite, heavily inspired by the testsuite in git. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Merge branch 'stable'Lars Hjemli2007-11-091-4/+7
|\| | | | | | | | | | | | | | | | | | | * stable: CGIT 0.7.1 Makefile install: include cgit.png, do not empty cache Conflicts: Makefile
| * CGIT 0.7.1v0.7.1Lars Hjemli2007-11-091-1/+1
| | | | | | | | Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| * Makefile install: include cgit.png, do not empty cacheLars Hjemli2007-11-091-3/+6
| | | | | | | | | | | | | | The cache-cleaning is potentially dangerous, so lets move it away from the install target. A special emptycache target can be used to run the rm -rf. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Minor css tweaksLars Hjemli2007-11-091-10/+1
| | | | | | | | | | | | | | Don't specify border and background color for input controls, reduce font- size of heading in sidebar. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
* | Merge branch 'stable'Lars Hjemli2007-11-081-2/+4
|\| | | | | | | | | * stable: Support "/" as virtual-root