diff --git a/cgit-1.2.3-update-to-git-2.34.1.patch b/cgit-1.2.3-update-to-git-2.34.1.patch new file mode 100644 index 0000000..3e47d41 --- /dev/null +++ b/cgit-1.2.3-update-to-git-2.34.1.patch @@ -0,0 +1,1003 @@ +From 0462f08d8508978256118769b3e6dc89773a1367 Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Mon, 9 Mar 2020 09:51:05 +0100 +Subject: [PATCH] git: update to v2.26.0 + +Update to git version v2.26.0. + +No changes required. + +Signed-off-by: Christian Hesse +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 49109ad..b50159f 100644 +--- a/Makefile ++++ b/Makefile +@@ -14,7 +14,7 @@ htmldir = $(docdir) + pdfdir = $(docdir) + mandir = $(prefix)/share/man + SHA1_HEADER = +-GIT_VER = 2.25.1 ++GIT_VER = 2.26.0 + GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.xz + INSTALL = install + COPYTREE = cp -r +From f780396c0afa6015a05025c6404a560252605319 Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Tue, 2 Jun 2020 10:10:15 +0200 +Subject: [PATCH] git: update to v2.27.0 + +Update to git version v2.27.0. + +No changes required. + +Signed-off-by: Christian Hesse +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index b50159f..5c8fa8c 100644 +--- a/Makefile ++++ b/Makefile +@@ -14,7 +14,7 @@ htmldir = $(docdir) + pdfdir = $(docdir) + mandir = $(prefix)/share/man + SHA1_HEADER = +-GIT_VER = 2.26.0 ++GIT_VER = 2.27.0 + GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.xz + INSTALL = install + COPYTREE = cp -r +From 205837d4684f331afa93c946cbdfa1fa9b3d1ce9 Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Mon, 27 Jul 2020 20:36:14 +0200 +Subject: [PATCH] git: update to v2.28.0 + +Update to git version v2.28.0. + +No changes required. + +Signed-off-by: Christian Hesse +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 5c8fa8c..84822f0 100644 +--- a/Makefile ++++ b/Makefile +@@ -14,7 +14,7 @@ htmldir = $(docdir) + pdfdir = $(docdir) + mandir = $(prefix)/share/man + SHA1_HEADER = +-GIT_VER = 2.27.0 ++GIT_VER = 2.28.0 + GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.xz + INSTALL = install + COPYTREE = cp -r +From 629659d2cffbf059374fc53e6400ff0bebe1ddde Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Tue, 6 Oct 2020 16:32:08 +0200 +Subject: [PATCH] git: update to v2.29.0 + +Update to git version v2.29.0, this requires changes for these +upstream commits: + +* dbbcd44fb47347a3fdbee88ea21805b7f4ac0b98 + strvec: rename files from argv-array to strvec + +* 873cd28a8b17ff21908c78c7929a7615f8c94992 + argv-array: rename to strvec + +* d70a9eb611a9d242c1d26847d223b8677609305b + strvec: rename struct fields + +* 6a67c759489e1025665adf78326e9e0d0981bab5 + test-lib-functions: restrict test_must_fail usage + +Signed-off-by: Christian Hesse +--- + Makefile | 2 +- + cgit.h | 2 +- + tests/t0109-gitconfig.sh | 2 +- + ui-blame.c | 10 +++++----- + ui-log.c | 30 +++++++++++++++--------------- + ui-snapshot.c | 24 ++++++++++++------------ + 6 files changed, 35 insertions(+), 35 deletions(-) + +diff --git a/Makefile b/Makefile +index 84822f0..c947b63 100644 +--- a/Makefile ++++ b/Makefile +@@ -14,7 +14,7 @@ htmldir = $(docdir) + pdfdir = $(docdir) + mandir = $(prefix)/share/man + SHA1_HEADER = +-GIT_VER = 2.28.0 ++GIT_VER = 2.29.0 + GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.xz + INSTALL = install + COPYTREE = cp -r +diff --git a/cgit.h b/cgit.h +index 7ec46b4..f5db364 100644 +--- a/cgit.h ++++ b/cgit.h +@@ -14,7 +14,7 @@ + #include + #include + #include +-#include ++#include + #include + #include + #include +diff --git a/tests/t0109-gitconfig.sh b/tests/t0109-gitconfig.sh +index 8cee75c..189ef28 100755 +--- a/tests/t0109-gitconfig.sh ++++ b/tests/t0109-gitconfig.sh +@@ -25,7 +25,7 @@ test_no_home_access () { + -E CGIT_CONFIG="$PWD/cgitrc" \ + -E QUERY_STRING="url=$1" \ + -e access -f -o strace.out cgit && +- test_must_fail grep "$non_existent_path" strace.out ++ ! grep "$non_existent_path" strace.out + } + + test_no_home_access_success() { +diff --git a/ui-blame.c b/ui-blame.c +index f28eea0..c3662bb 100644 +--- a/ui-blame.c ++++ b/ui-blame.c +@@ -10,7 +10,7 @@ + #include "ui-blame.h" + #include "html.h" + #include "ui-shared.h" +-#include "argv-array.h" ++#include "strvec.h" + #include "blame.h" + + +@@ -104,7 +104,7 @@ static void print_object(const struct object_id *oid, const char *path, + enum object_type type; + char *buf; + unsigned long size; +- struct argv_array rev_argv = ARGV_ARRAY_INIT; ++ struct strvec rev_argv = STRVEC_INIT; + struct rev_info revs; + struct blame_scoreboard sb; + struct blame_origin *o; +@@ -124,11 +124,11 @@ static void print_object(const struct object_id *oid, const char *path, + return; + } + +- argv_array_push(&rev_argv, "blame"); +- argv_array_push(&rev_argv, rev); ++ strvec_push(&rev_argv, "blame"); ++ strvec_push(&rev_argv, rev); + init_revisions(&revs, NULL); + revs.diffopt.flags.allow_textconv = 1; +- setup_revisions(rev_argv.argc, rev_argv.argv, &revs, NULL); ++ setup_revisions(rev_argv.nr, rev_argv.v, &revs, NULL); + init_scoreboard(&sb); + sb.revs = &revs; + sb.repo = the_repository; +diff --git a/ui-log.c b/ui-log.c +index 2939c01..fd07409 100644 +--- a/ui-log.c ++++ b/ui-log.c +@@ -10,7 +10,7 @@ + #include "ui-log.h" + #include "html.h" + #include "ui-shared.h" +-#include "argv-array.h" ++#include "strvec.h" + + static int files, add_lines, rem_lines, lines_counted; + +@@ -366,23 +366,23 @@ void cgit_print_log(const char *tip, int ofs, int cnt, char *grep, char *pattern + { + struct rev_info rev; + struct commit *commit; +- struct argv_array rev_argv = ARGV_ARRAY_INIT; ++ struct strvec rev_argv = STRVEC_INIT; + int i, columns = commit_graph ? 4 : 3; + int must_free_tip = 0; + + /* rev_argv.argv[0] will be ignored by setup_revisions */ +- argv_array_push(&rev_argv, "log_rev_setup"); ++ strvec_push(&rev_argv, "log_rev_setup"); + + if (!tip) + tip = ctx.qry.head; + tip = disambiguate_ref(tip, &must_free_tip); +- argv_array_push(&rev_argv, tip); ++ strvec_push(&rev_argv, tip); + + if (grep && pattern && *pattern) { + pattern = xstrdup(pattern); + if (!strcmp(grep, "grep") || !strcmp(grep, "author") || + !strcmp(grep, "committer")) { +- argv_array_pushf(&rev_argv, "--%s=%s", grep, pattern); ++ strvec_pushf(&rev_argv, "--%s=%s", grep, pattern); + } else if (!strcmp(grep, "range")) { + char *arg; + /* Split the pattern at whitespace and add each token +@@ -390,14 +390,14 @@ void cgit_print_log(const char *tip, int ofs, int cnt, char *grep, char *pattern + * rev-list options. Also, replace the previously + * pushed tip (it's no longer relevant). + */ +- argv_array_pop(&rev_argv); ++ strvec_pop(&rev_argv); + while ((arg = next_token(&pattern))) { + if (*arg == '-') { + fprintf(stderr, "Bad range expr: %s\n", + arg); + break; + } +- argv_array_push(&rev_argv, arg); ++ strvec_push(&rev_argv, arg); + } + } + } +@@ -412,22 +412,22 @@ void cgit_print_log(const char *tip, int ofs, int cnt, char *grep, char *pattern + } + + if (commit_graph && !ctx.qry.follow) { +- argv_array_push(&rev_argv, "--graph"); +- argv_array_push(&rev_argv, "--color"); ++ strvec_push(&rev_argv, "--graph"); ++ strvec_push(&rev_argv, "--color"); + graph_set_column_colors(column_colors_html, + COLUMN_COLORS_HTML_MAX); + } + + if (commit_sort == 1) +- argv_array_push(&rev_argv, "--date-order"); ++ strvec_push(&rev_argv, "--date-order"); + else if (commit_sort == 2) +- argv_array_push(&rev_argv, "--topo-order"); ++ strvec_push(&rev_argv, "--topo-order"); + + if (path && ctx.qry.follow) +- argv_array_push(&rev_argv, "--follow"); +- argv_array_push(&rev_argv, "--"); ++ strvec_push(&rev_argv, "--follow"); ++ strvec_push(&rev_argv, "--"); + if (path) +- argv_array_push(&rev_argv, path); ++ strvec_push(&rev_argv, path); + + init_revisions(&rev, NULL); + rev.abbrev = DEFAULT_ABBREV; +@@ -436,7 +436,7 @@ void cgit_print_log(const char *tip, int ofs, int cnt, char *grep, char *pattern + rev.show_root_diff = 0; + rev.ignore_missing = 1; + rev.simplify_history = 1; +- setup_revisions(rev_argv.argc, rev_argv.argv, &rev, NULL); ++ setup_revisions(rev_argv.nr, rev_argv.v, &rev, NULL); + load_ref_decorations(NULL, DECORATE_FULL_REFS); + rev.show_decorations = 1; + rev.grep_filter.ignore_case = 1; +diff --git a/ui-snapshot.c b/ui-snapshot.c +index 556d3ed..18361a6 100644 +--- a/ui-snapshot.c ++++ b/ui-snapshot.c +@@ -13,32 +13,32 @@ + + static int write_archive_type(const char *format, const char *hex, const char *prefix) + { +- struct argv_array argv = ARGV_ARRAY_INIT; ++ struct strvec argv = STRVEC_INIT; + const char **nargv; + int result; +- argv_array_push(&argv, "snapshot"); +- argv_array_push(&argv, format); ++ strvec_push(&argv, "snapshot"); ++ strvec_push(&argv, format); + if (prefix) { + struct strbuf buf = STRBUF_INIT; + strbuf_addstr(&buf, prefix); + strbuf_addch(&buf, '/'); +- argv_array_push(&argv, "--prefix"); +- argv_array_push(&argv, buf.buf); ++ strvec_push(&argv, "--prefix"); ++ strvec_push(&argv, buf.buf); + strbuf_release(&buf); + } +- argv_array_push(&argv, hex); ++ strvec_push(&argv, hex); + /* + * Now we need to copy the pointers to arguments into a new + * structure because write_archive will rearrange its arguments + * which may result in duplicated/missing entries causing leaks +- * or double-frees in argv_array_clear. ++ * or double-frees in strvec_clear. + */ +- nargv = xmalloc(sizeof(char *) * (argv.argc + 1)); +- /* argv_array guarantees a trailing NULL entry. */ +- memcpy(nargv, argv.argv, sizeof(char *) * (argv.argc + 1)); ++ nargv = xmalloc(sizeof(char *) * (argv.nr + 1)); ++ /* strvec guarantees a trailing NULL entry. */ ++ memcpy(nargv, argv.v, sizeof(char *) * (argv.nr + 1)); + +- result = write_archive(argv.argc, nargv, NULL, the_repository, NULL, 0); +- argv_array_clear(&argv); ++ result = write_archive(argv.nr, nargv, NULL, the_repository, NULL, 0); ++ strvec_clear(&argv); + free(nargv); + return result; + } +From fe99c76ee477f91d6d983486491603109c7b2599 Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Tue, 27 Oct 2020 10:39:46 +0100 +Subject: [PATCH] git: update to v2.29.1 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Update to git version v2.29.1. No functional change, but we want latest +and greated version number, no? 😜 + +Signed-off-by: Christian Hesse +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index c947b63..eb60388 100644 +--- a/Makefile ++++ b/Makefile +@@ -14,7 +14,7 @@ htmldir = $(docdir) + pdfdir = $(docdir) + mandir = $(prefix)/share/man + SHA1_HEADER = +-GIT_VER = 2.29.0 ++GIT_VER = 2.29.1 + GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.xz + INSTALL = install + COPYTREE = cp -r +From b1739247b17524460282f63fa240b3f34501e000 Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Fri, 30 Oct 2020 22:22:32 +0100 +Subject: [PATCH] git: update to v2.29.2 + +Update to git version v2.29.2. + +No changes required. + +Signed-off-by: Christian Hesse +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index eb60388..1a8f496 100644 +--- a/Makefile ++++ b/Makefile +@@ -14,7 +14,7 @@ htmldir = $(docdir) + pdfdir = $(docdir) + mandir = $(prefix)/share/man + SHA1_HEADER = +-GIT_VER = 2.29.1 ++GIT_VER = 2.29.2 + GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.xz + INSTALL = install + COPYTREE = cp -r +From cef27b670a66c9840bb6120260864e4b3a701dc2 Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Mon, 28 Dec 2020 23:27:13 +0100 +Subject: [PATCH] git: update to v2.30.0 + +Update to git version v2.30.0, this requires changes for these +upstream commits: + +* 88894aaeeae92e8cb41143cc2e045f50289dc790 + blame: simplify 'setup_scoreboard' interface + +* 1fbfdf556f2abc708183caca53ae4e2881b46ae2 + banned.h: mark non-reentrant gmtime, etc as banned + +Signed-off-by: Christian Hesse +--- + Makefile | 2 +- + cache.c | 6 +++--- + ui-blame.c | 3 ++- + ui-shared.c | 9 +++++---- + ui-stats.c | 48 ++++++++++++++++++++++++------------------------ + 5 files changed, 35 insertions(+), 33 deletions(-) + +diff --git a/Makefile b/Makefile +index 1a8f496..6dfc003 100644 +--- a/Makefile ++++ b/Makefile +@@ -14,7 +14,7 @@ htmldir = $(docdir) + pdfdir = $(docdir) + mandir = $(prefix)/share/man + SHA1_HEADER = +-GIT_VER = 2.29.2 ++GIT_VER = 2.30.0 + GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.xz + INSTALL = install + COPYTREE = cp -r +diff --git a/cache.c b/cache.c +index 2c70be7..55199e8 100644 +--- a/cache.c ++++ b/cache.c +@@ -401,12 +401,12 @@ int cache_process(int size, const char *path, const char *key, int ttl, + static char *sprintftime(const char *format, time_t time) + { + static char buf[64]; +- struct tm *tm; ++ struct tm tm; + + if (!time) + return NULL; +- tm = gmtime(&time); +- strftime(buf, sizeof(buf)-1, format, tm); ++ gmtime_r(&time, &tm); ++ strftime(buf, sizeof(buf)-1, format, &tm); + return buf; + } + +diff --git a/ui-blame.c b/ui-blame.c +index cfab7fb..ec1d888 100644 +--- a/ui-blame.c ++++ b/ui-blame.c +@@ -132,7 +132,8 @@ static void print_object(const struct object_id *oid, const char *path, + init_scoreboard(&sb); + sb.revs = &revs; + sb.repo = the_repository; +- setup_scoreboard(&sb, path, &o); ++ sb.path = path; ++ setup_scoreboard(&sb, &o); + o->suspects = blame_entry_prepend(NULL, 0, sb.num_lines, o); + prio_queue_put(&sb.commits, o->commit); + blame_origin_decref(o); +diff --git a/ui-shared.c b/ui-shared.c +index 151ac17..acd8ab5 100644 +--- a/ui-shared.c ++++ b/ui-shared.c +@@ -22,10 +22,11 @@ static char *http_date(time_t t) + static char month[][4] = + {"Jan", "Feb", "Mar", "Apr", "May", "Jun", + "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}; +- struct tm *tm = gmtime(&t); +- return fmt("%s, %02d %s %04d %02d:%02d:%02d GMT", day[tm->tm_wday], +- tm->tm_mday, month[tm->tm_mon], 1900 + tm->tm_year, +- tm->tm_hour, tm->tm_min, tm->tm_sec); ++ struct tm tm; ++ gmtime_r(&t, &tm); ++ return fmt("%s, %02d %s %04d %02d:%02d:%02d GMT", day[tm.tm_wday], ++ tm.tm_mday, month[tm.tm_mon], 1900 + tm.tm_year, ++ tm.tm_hour, tm.tm_min, tm.tm_sec); + } + + void cgit_print_error(const char *fmt, ...) +diff --git a/ui-stats.c b/ui-stats.c +index 7272a61..09b3625 100644 +--- a/ui-stats.c ++++ b/ui-stats.c +@@ -166,7 +166,7 @@ static void add_commit(struct string_list *authors, struct commit *commit, + struct authorstat *authorstat; + struct string_list *items; + char *tmp; +- struct tm *date; ++ struct tm date; + time_t t; + uintptr_t *counter; + +@@ -180,9 +180,9 @@ static void add_commit(struct string_list *authors, struct commit *commit, + authorstat = author->util; + items = &authorstat->list; + t = info->committer_date; +- date = gmtime(&t); +- period->trunc(date); +- tmp = xstrdup(period->pretty(date)); ++ gmtime_r(&t, &date); ++ period->trunc(&date); ++ tmp = xstrdup(period->pretty(&date)); + item = string_list_insert(items, tmp); + counter = (uintptr_t *)&item->util; + if (*counter) +@@ -215,15 +215,15 @@ static struct string_list collect_stats(const struct cgit_period *period) + int argc = 3; + time_t now; + long i; +- struct tm *tm; ++ struct tm tm; + char tmp[11]; + + time(&now); +- tm = gmtime(&now); +- period->trunc(tm); ++ gmtime_r(&now, &tm); ++ period->trunc(&tm); + for (i = 1; i < period->count; i++) +- period->dec(tm); +- strftime(tmp, sizeof(tmp), "%Y-%m-%d", tm); ++ period->dec(&tm); ++ strftime(tmp, sizeof(tmp), "%Y-%m-%d", &tm); + argv[2] = xstrdup(fmt("--since=%s", tmp)); + if (ctx.qry.path) { + argv[3] = "--"; +@@ -261,21 +261,21 @@ static void print_combined_authorrow(struct string_list *authors, int from, + struct string_list_item *date; + time_t now; + long i, j, total, subtotal; +- struct tm *tm; ++ struct tm tm; + char *tmp; + + time(&now); +- tm = gmtime(&now); +- period->trunc(tm); ++ gmtime_r(&now, &tm); ++ period->trunc(&tm); + for (i = 1; i < period->count; i++) +- period->dec(tm); ++ period->dec(&tm); + + total = 0; + htmlf("%s", leftclass, + fmt(name, to - from + 1)); + for (j = 0; j < period->count; j++) { +- tmp = period->pretty(tm); +- period->inc(tm); ++ tmp = period->pretty(&tm); ++ period->inc(&tm); + subtotal = 0; + for (i = from; i <= to; i++) { + author = &authors->items[i]; +@@ -300,20 +300,20 @@ static void print_authors(struct string_list *authors, int top, + struct string_list_item *date; + time_t now; + long i, j, total; +- struct tm *tm; ++ struct tm tm; + char *tmp; + + time(&now); +- tm = gmtime(&now); +- period->trunc(tm); ++ gmtime_r(&now, &tm); ++ period->trunc(&tm); + for (i = 1; i < period->count; i++) +- period->dec(tm); ++ period->dec(&tm); + + html(""); + for (j = 0; j < period->count; j++) { +- tmp = period->pretty(tm); ++ tmp = period->pretty(&tm); + htmlf("", tmp); +- period->inc(tm); ++ period->inc(&tm); + } + html("\n"); + +@@ -329,10 +329,10 @@ static void print_authors(struct string_list *authors, int top, + items = &authorstat->list; + total = 0; + for (j = 0; j < period->count; j++) +- period->dec(tm); ++ period->dec(&tm); + for (j = 0; j < period->count; j++) { +- tmp = period->pretty(tm); +- period->inc(tm); ++ tmp = period->pretty(&tm); ++ period->inc(&tm); + date = string_list_lookup(items, tmp); + if (!date) + html(""); +From 4ffadc1e0c589f9bcfb4a721f5625914ef2d496d Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Wed, 10 Feb 2021 16:13:53 +0100 +Subject: [PATCH] git: update to v2.30.1 + +Update to git version v2.30.1, no additional changes required. + +Signed-off-by: Christian Hesse +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 6dfc003..a4e597b 100644 +--- a/Makefile ++++ b/Makefile +@@ -14,7 +14,7 @@ htmldir = $(docdir) + pdfdir = $(docdir) + mandir = $(prefix)/share/man + SHA1_HEADER = +-GIT_VER = 2.30.0 ++GIT_VER = 2.30.1 + GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.xz + INSTALL = install + COPYTREE = cp -r +From d889cae811f27a052317ac5aea23890cba414760 Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Mon, 15 Mar 2021 22:48:26 +0100 +Subject: [PATCH] git: update to v2.31.0 + +Update to git version v2.31.0, this requires changes for these +upstream commits: + +* 36a317929b8f0c67d77d54235f2d20751c576cbb + refs: switch peel_ref() to peel_iterated_oid() + +Signed-off-by: Christian Hesse +--- + Makefile | 2 +- + ui-log.c | 7 ++++--- + 2 files changed, 5 insertions(+), 4 deletions(-) + +diff --git a/Makefile b/Makefile +index a4e597b..11b437b 100644 +--- a/Makefile ++++ b/Makefile +@@ -14,7 +14,7 @@ htmldir = $(docdir) + pdfdir = $(docdir) + mandir = $(prefix)/share/man + SHA1_HEADER = +-GIT_VER = 2.30.1 ++GIT_VER = 2.31.0 + GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.xz + INSTALL = install + COPYTREE = cp -r +diff --git a/ui-log.c b/ui-log.c +index 6914f75..20774bf 100644 +--- a/ui-log.c ++++ b/ui-log.c +@@ -65,8 +65,9 @@ void show_commit_decorations(struct commit *commit) + return; + html(""); + while (deco) { +- struct object_id peeled; ++ struct object_id oid_tag, peeled; + int is_annotated = 0; ++ + strlcpy(buf, prettify_refname(deco->name), sizeof(buf)); + switch(deco->type) { + case DECORATION_NONE: +@@ -79,8 +80,8 @@ void show_commit_decorations(struct commit *commit) + ctx.qry.showmsg, 0); + break; + case DECORATION_REF_TAG: +- if (!peel_ref(deco->name, &peeled)) +- is_annotated = !oidcmp(&commit->object.oid, &peeled); ++ if (!read_ref(deco->name, &oid_tag) && !peel_iterated_oid(&oid_tag, &peeled)) ++ is_annotated = !oideq(&oid_tag, &peeled); + cgit_tag_link(buf, NULL, is_annotated ? "tag-annotated-deco" : "tag-deco", buf); + break; + case DECORATION_REF_REMOTE: +From 6dbbffe01533a91c79c4497c80f46af8e1581e25 Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Tue, 18 May 2021 21:54:23 +0200 +Subject: [PATCH] git: update to v2.31.1 + +Update to git version v2.31.1, no additional changes required. + +Signed-off-by: Christian Hesse +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 11b437b..abc52bc 100644 +--- a/Makefile ++++ b/Makefile +@@ -14,7 +14,7 @@ htmldir = $(docdir) + pdfdir = $(docdir) + mandir = $(prefix)/share/man + SHA1_HEADER = +-GIT_VER = 2.31.0 ++GIT_VER = 2.31.1 + GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.xz + INSTALL = install + COPYTREE = cp -r +From 5258c297ba6fb604ae1415fbc19a3fe42457e49e Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Tue, 18 May 2021 22:49:13 +0200 +Subject: [PATCH] git: update to v2.32.0 + +Update to git version v2.32.0, this requires changes for these +upstream commits: + +* 47957485b3b731a7860e0554d2bd12c0dce1c75a + tree.h API: simplify read_tree_recursive() signature + +Signed-off-by: Christian Hesse +--- + Makefile | 2 +- + ui-blame.c | 9 +++------ + ui-blob.c | 20 ++++++++------------ + ui-plain.c | 7 +++---- + ui-tree.c | 21 ++++++++------------- + 5 files changed, 23 insertions(+), 36 deletions(-) + +diff --git a/Makefile b/Makefile +index abc52bc..d13c5bd 100644 +--- a/Makefile ++++ b/Makefile +@@ -14,7 +14,7 @@ htmldir = $(docdir) + pdfdir = $(docdir) + mandir = $(prefix)/share/man + SHA1_HEADER = +-GIT_VER = 2.31.1 ++GIT_VER = 2.32.0 + GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.xz + INSTALL = install + COPYTREE = cp -r +diff --git a/ui-blame.c b/ui-blame.c +index ec1d888..03136f7 100644 +--- a/ui-blame.c ++++ b/ui-blame.c +@@ -221,8 +221,7 @@ cleanup: + } + + static int walk_tree(const struct object_id *oid, struct strbuf *base, +- const char *pathname, unsigned mode, int stage, +- void *cbdata) ++ const char *pathname, unsigned mode, void *cbdata) + { + struct walk_tree_context *walk_tree_ctx = cbdata; + +@@ -291,10 +290,8 @@ void cgit_print_blame(void) + walk_tree_ctx.match_baselen = (path_items.match) ? + basedir_len(path_items.match) : -1; + +- read_tree_recursive(the_repository, +- repo_get_commit_tree(the_repository, commit), +- "", 0, 0, +- &paths, walk_tree, &walk_tree_ctx); ++ read_tree(the_repository, repo_get_commit_tree(the_repository, commit), ++ &paths, walk_tree, &walk_tree_ctx); + if (!walk_tree_ctx.state) + cgit_print_error_page(404, "Not found", "Not found"); + else if (walk_tree_ctx.state == 2) +diff --git a/ui-blob.c b/ui-blob.c +index f76c641..c10ae42 100644 +--- a/ui-blob.c ++++ b/ui-blob.c +@@ -19,7 +19,7 @@ struct walk_tree_context { + }; + + static int walk_tree(const struct object_id *oid, struct strbuf *base, +- const char *pathname, unsigned mode, int stage, void *cbdata) ++ const char *pathname, unsigned mode, void *cbdata) + { + struct walk_tree_context *walk_tree_ctx = cbdata; + +@@ -56,9 +56,9 @@ int cgit_ref_path_exists(const char *path, const char *ref, int file_only) + goto done; + if (oid_object_info(the_repository, &oid, &size) != OBJ_COMMIT) + goto done; +- read_tree_recursive(the_repository, +- repo_get_commit_tree(the_repository, lookup_commit_reference(the_repository, &oid)), +- "", 0, 0, &paths, walk_tree, &walk_tree_ctx); ++ read_tree(the_repository, ++ repo_get_commit_tree(the_repository, lookup_commit_reference(the_repository, &oid)), ++ &paths, walk_tree, &walk_tree_ctx); + + done: + free(path_items.match); +@@ -92,10 +92,8 @@ int cgit_print_file(char *path, const char *head, int file_only) + type = oid_object_info(the_repository, &oid, &size); + if (type == OBJ_COMMIT) { + commit = lookup_commit_reference(the_repository, &oid); +- read_tree_recursive(the_repository, +- repo_get_commit_tree(the_repository, commit), +- "", 0, 0, &paths, walk_tree, +- &walk_tree_ctx); ++ read_tree(the_repository, repo_get_commit_tree(the_repository, commit), ++ &paths, walk_tree, &walk_tree_ctx); + if (!walk_tree_ctx.found_path) + return -1; + type = oid_object_info(the_repository, &oid, &size); +@@ -151,10 +149,8 @@ void cgit_print_blob(const char *hex, char *path, const char *head, int file_onl + + if ((!hex) && type == OBJ_COMMIT && path) { + commit = lookup_commit_reference(the_repository, &oid); +- read_tree_recursive(the_repository, +- repo_get_commit_tree(the_repository, commit), +- "", 0, 0, &paths, walk_tree, +- &walk_tree_ctx); ++ read_tree(the_repository, repo_get_commit_tree(the_repository, commit), ++ &paths, walk_tree, &walk_tree_ctx); + type = oid_object_info(the_repository, &oid, &size); + } + +diff --git a/ui-plain.c b/ui-plain.c +index 001001c..65a205f 100644 +--- a/ui-plain.c ++++ b/ui-plain.c +@@ -130,7 +130,7 @@ static void print_dir_tail(void) + } + + static int walk_tree(const struct object_id *oid, struct strbuf *base, +- const char *pathname, unsigned mode, int stage, void *cbdata) ++ const char *pathname, unsigned mode, void *cbdata) + { + struct walk_tree_context *walk_tree_ctx = cbdata; + +@@ -198,9 +198,8 @@ void cgit_print_plain(void) + } + else + walk_tree_ctx.match_baselen = basedir_len(path_items.match); +- read_tree_recursive(the_repository, +- repo_get_commit_tree(the_repository, commit), +- "", 0, 0, &paths, walk_tree, &walk_tree_ctx); ++ read_tree(the_repository, repo_get_commit_tree(the_repository, commit), ++ &paths, walk_tree, &walk_tree_ctx); + if (!walk_tree_ctx.match) + cgit_print_error_page(404, "Not found", "Not found"); + else if (walk_tree_ctx.match == 2) +diff --git a/ui-tree.c b/ui-tree.c +index 1e4efb2..b61f6f5 100644 +--- a/ui-tree.c ++++ b/ui-tree.c +@@ -139,8 +139,7 @@ struct single_tree_ctx { + }; + + static int single_tree_cb(const struct object_id *oid, struct strbuf *base, +- const char *pathname, unsigned mode, int stage, +- void *cbdata) ++ const char *pathname, unsigned mode, void *cbdata) + { + struct single_tree_ctx *ctx = cbdata; + +@@ -185,8 +184,7 @@ static void write_tree_link(const struct object_id *oid, char *name, + tree_ctx.name = NULL; + tree_ctx.count = 0; + +- read_tree_recursive(the_repository, tree, "", 0, 1, +- &paths, single_tree_cb, &tree_ctx); ++ read_tree(the_repository, tree, &paths, single_tree_cb, &tree_ctx); + + if (tree_ctx.count != 1) + break; +@@ -199,7 +197,7 @@ static void write_tree_link(const struct object_id *oid, char *name, + } + + static int ls_item(const struct object_id *oid, struct strbuf *base, +- const char *pathname, unsigned mode, int stage, void *cbdata) ++ const char *pathname, unsigned mode, void *cbdata) + { + struct walk_tree_context *walk_tree_ctx = cbdata; + char *name; +@@ -294,14 +292,13 @@ static void ls_tree(const struct object_id *oid, const char *path, struct walk_t + } + + ls_head(); +- read_tree_recursive(the_repository, tree, "", 0, 1, +- &paths, ls_item, walk_tree_ctx); ++ read_tree(the_repository, tree, &paths, ls_item, walk_tree_ctx); + ls_tail(); + } + + + static int walk_tree(const struct object_id *oid, struct strbuf *base, +- const char *pathname, unsigned mode, int stage, void *cbdata) ++ const char *pathname, unsigned mode, void *cbdata) + { + struct walk_tree_context *walk_tree_ctx = cbdata; + +@@ -326,7 +323,7 @@ static int walk_tree(const struct object_id *oid, struct strbuf *base, + return 0; + } + } +- ls_item(oid, base, pathname, mode, stage, walk_tree_ctx); ++ ls_item(oid, base, pathname, mode, walk_tree_ctx); + return 0; + } + +@@ -374,10 +371,8 @@ void cgit_print_tree(const char *rev, char *path) + goto cleanup; + } + +- read_tree_recursive(the_repository, +- repo_get_commit_tree(the_repository, commit), +- "", 0, 0, +- &paths, walk_tree, &walk_tree_ctx); ++ read_tree(the_repository, repo_get_commit_tree(the_repository, commit), ++ &paths, walk_tree, &walk_tree_ctx); + if (walk_tree_ctx.state == 1) + ls_tail(); + else if (walk_tree_ctx.state == 2) +From 45eff406554f3ff31bdf7d54daae1da5635db72e Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Sun, 8 Aug 2021 17:55:53 +0200 +Subject: [PATCH] git: update to v2.33.0 + +Update to git version v2.33.0, no additional changes required. + +Signed-off-by: Christian Hesse +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index d13c5bd..b030ff9 100644 +--- a/Makefile ++++ b/Makefile +@@ -14,7 +14,7 @@ htmldir = $(docdir) + pdfdir = $(docdir) + mandir = $(prefix)/share/man + SHA1_HEADER = +-GIT_VER = 2.32.0 ++GIT_VER = 2.33.0 + GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.xz + INSTALL = install + COPYTREE = cp -r +From b8f2b675df61e3a4ff4db7073fe7142fc07e8b7a Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Wed, 3 Nov 2021 15:32:17 +0100 +Subject: [PATCH] git: update to v2.34.0 + +Update to git version v2.34.0, this requires changes for these +upstream commits: + +* abf897bacd2d36b9dbd07c70b4a2f97a084704ee + string-list.[ch]: remove string_list_init() compatibility function + +Signed-off-by: Christian Hesse +--- + Makefile | 2 +- + cgit.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index b030ff9..9153a39 100644 +--- a/Makefile ++++ b/Makefile +@@ -14,7 +14,7 @@ htmldir = $(docdir) + pdfdir = $(docdir) + mandir = $(prefix)/share/man + SHA1_HEADER = +-GIT_VER = 2.33.0 ++GIT_VER = 2.34.0 + GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.xz + INSTALL = install + COPYTREE = cp -r +diff --git a/cgit.c b/cgit.c +index 08d81a1..4b2d86c 100644 +--- a/cgit.c ++++ b/cgit.c +@@ -428,7 +428,7 @@ static void prepare_context(void) + ctx.page.modified = time(NULL); + ctx.page.expires = ctx.page.modified; + ctx.page.etag = NULL; +- string_list_init(&ctx.cfg.mimetypes, 1); ++ string_list_init_dup(&ctx.cfg.mimetypes); + if (ctx.env.script_name) + ctx.cfg.script_name = xstrdup(ctx.env.script_name); + if (ctx.env.query_string) +From 11be5b8182fc71c00c1c00c693f64c97769d77bb Mon Sep 17 00:00:00 2001 +From: Christian Hesse +Date: Wed, 24 Nov 2021 21:12:12 +0100 +Subject: [PATCH] git: update to v2.34.1 + +Update to git version v2.34.1, no additional changes required. + +Signed-off-by: Christian Hesse +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 9153a39..baa7c2d 100644 +--- a/Makefile ++++ b/Makefile +@@ -14,7 +14,7 @@ htmldir = $(docdir) + pdfdir = $(docdir) + mandir = $(prefix)/share/man + SHA1_HEADER = +-GIT_VER = 2.34.0 ++GIT_VER = 2.34.1 + GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.xz + INSTALL = install + COPYTREE = cp -r diff --git a/cgit.spec b/cgit.spec index dcf72d7..c59d76b 100644 --- a/cgit.spec +++ b/cgit.spec @@ -1,7 +1,7 @@ # Review bug: https://bugzilla.redhat.com/479723 # Defaults -%global gitver 2.25.1 +%global gitver 2.34.1 %global cachedir %{_localstatedir}/cache/%{name} %global filterdir %{_libexecdir}/%{name}/filters %global scriptdir %{_localstatedir}/www/cgi-bin @@ -31,7 +31,7 @@ Name: cgit Version: 1.2.3 -Release: 7%{?dist} +Release: 8%{?dist} Summary: A fast web interface for git License: GPLv2 @@ -68,7 +68,20 @@ Patch0: 0001-use-highlight-3-by-default.patch # https://lists.zx2c4.com/pipermail/cgit/2020-August/004513.html Patch1: https://git.zx2c4.com/cgit/patch/?id=bd6f5683f#/0001-t0107-support-older-and-or-non-GNU-tar.patch -# Security guys might try to repoquery for this. +# Update to current git +# +# This is a compilation of patches Christian Hesse has sent to the cgit list. +# It was created somewhat manually by reviewing the number of patches since the +# last update to git-2.25.1 (14). Then patch was generated via: +# +# git log --grep=git: --format='%h' --reverse -14 origin/ch/for-jason | +# while read c _; do +# git format-patch -1 --ignore-submodules --no-signature --stdout $c +# done >~/src/dist/fedora/cgit/cgit-1.2.3-update-to-git-2.34.1.patch +Patch2: cgit-1.2.3-update-to-git-2.34.1.patch + +# Note the bundled git, per the packaging guidelines +# https://docs.fedoraproject.org/en-US/packaging-guidelines/#bundling Provides: bundled(git) = %gitver %if %{with highlight} @@ -214,6 +227,9 @@ make test %changelog +* Sun Jan 02 2022 Todd Zullinger - 1.2.3-8 +- update to git-2.34.1 + * Mon Jul 26 2021 Todd Zullinger - 1.2.3-7 - update SELinux README - simplify install commands diff --git a/sources b/sources index ce92be2..d78c0ad 100644 --- a/sources +++ b/sources @@ -1,4 +1,4 @@ SHA512 (cgit-1.2.3.tar.xz) = 58f9bb644b07be49dc51f3ef30a3d0e53699cede3c06b1d6920f3874fe846c83dd2589632aa84357b70ea2d60272448409aa1b892f405d14dd6745f5559b4504 SHA512 (cgit-1.2.3.tar.asc) = 6694f799bbf7c28baa683be0a2b51b0611d80b9611db9e1705e55e45e2501a1955910f90f9246a8ca52f61a2d34ac6262825f6a0165e67ec57189a8242aa4faa -SHA512 (git-2.25.1.tar.xz) = 15241143acfd8542d85d2709ac3c80dbd6e8d5234438f70c4f33cc71a2bdec3e32938df7f6351e2746d570b021d3bd0b70474ea4beec0c51d1fc45f9c287b344 -SHA512 (git-2.25.1.tar.sign) = 29a4fd59227d74b233416fa17ce184c0f57d824fdfc4554e37aa9dd06176fdfa0e7cbade77c661d5d9aa1e62d206f7f4816a690984845baa3ca691069de65a6b +SHA512 (git-2.34.1.tar.xz) = a1a8e9e6f64b1da25508fbd2f783564dcdbe181fb5ff1ebab3bdac6db6094e18acc334479a1abf22ac17ce4f733cc3e10a664db9ab234cd523735a3f027b42db +SHA512 (git-2.34.1.tar.sign) = a1111276e18da1a7b360e3ed3b8460034ea413b116482b0b66342f8873a9dd02a90f3f5bc7ad1e4b3c7f39ed55926a8155064b849e6e6bdf9478cb85b93f10b5
Author%sTotal
0