Commit graph

327 commits

Author SHA1 Message Date
Vladimír Čunát 89023c38fc
Recover the complicated situation after my bad merge
I made a mistake merge.  Reverting it in c778945806 undid the state
on master, but now I realize it crippled the git merge mechanism.
As the merge contained a mix of commits from `master..staging-next`
and other commits from `staging-next..staging`, it got the
`staging-next` branch into a state that was difficult to recover.

I reconstructed the "desired" state of staging-next tree by:
 - checking out the last commit of the problematic range: 4effe769e2
 - `git rebase -i --preserve-merges a8a018ddc0` - dropping the mistaken
   merge commit and its revert from that range (while keeping
   reapplication from 4effe769e2)
 - merging the last unaffected staging-next commit (803ca85c20)
 - fortunately no other commits have been pushed to staging-next yet
 - applying a diff on staging-next to get it into that state
2020-10-26 09:01:04 +01:00
Vladimír Čunát c778945806
Revert "Merge #101508: libraw: 0.20.0 -> 0.20.2"
I'm sorry; I didn't notice it contained staging commits.

This reverts commit 17f5305b6c, reversing
changes made to a8a018ddc0.
2020-10-25 09:41:51 +01:00
Michael Weiss de32261d9f
git: 2.29.0 -> 2.29.1 (#101488) 2020-10-23 20:55:30 +02:00
Tim Steinbach 6f2e9937af
git: 2.28.0 -> 2.29.0 2020-10-19 19:22:46 -04:00
WORLDofPEACE 6b1c8e8036 Revert "git: enable zsh completion"
This reverts commit 35b403bf12.
2020-09-14 18:31:00 -04:00
Dmitry Bogatov a5985162e3 git: make nls support optional
Add option "nlsSupport" (true by default, maching upstream defaults) to
make nls support configurable. This change does not trigger rebuild.
2020-08-16 10:38:28 +00:00
leo60228 d42bcde652
git: 2.27.0 -> 2.28.0 (#94026) 2020-07-28 12:38:29 +02:00
Jan Tojnar acb53e0698
Merge branch 'staging-next' into staging 2020-06-10 04:10:57 +02:00
Vladimír Čunát 0b4afef84a
gitMinimal: fix build after PR #86848
In that case it specified $doc output but didn't even create it.
I expect it's better to do it this way instead of creating it
as an empty directory.
(Only the failed builds get rebuilt by this commit.)
2020-06-09 09:28:24 +02:00
Michael Weiss 98c44f5657
git: 2.26.2 -> 2.27.0 (#89355)
disable_test: Use \s instead of ' ' as tabs are used for indentation in
t5324-split-commit-graph.sh. It's also necessary to insert : (no op) in
front of # to prevent Bash syntax errors due to empty loops.

Two newly added tests fail due the usage of shared permissions (outside
of the build sandbox they succeed, actually even with breakpointHook
(cntr attach + cntr exec bash)):
```
t5324-split-commit-graph.sh                      (Wstat: 256 Tests: 29
Failed: 2)
  Failed tests:  28-29
  Non-zero exit status: 1
```

I'm also adding myself as maintainer since there currently doesn't seem
to be a fixed one for regular updates.

Announcement:
https://lkml.kernel.org/lkml/xmqqzh9mu4my.fsf@gitster.c.googlers.com/
2020-06-06 19:21:54 +02:00
Michael Weiss 54918d6366
git: Add a doc output for the HTML and text files
This will install the HTML and text documentation into a separate output
so that users can install it without having to rebuild Git.
Previously only `doc/git/git-subtree.html` was installed (which is now
in $doc as well).
The current output sizes are as follows:
```
$ du -sh $(nix-build -A git)
47M     /nix/store/wyqgalp61kmavx06rams7z8jz177nd8y-git-2.26.2
$ du -sh $(nix-build -A git.doc)
14M     /nix/store/6zi22fl5xc3sg23d9shsviinvwk89wvq-git-2.26.2-doc
```

Fixes #86022 (at least partly since the output has to be installed).
2020-05-18 16:50:43 +02:00
Jörg Thalheim 887295fd2d
treewide: remove the-kenny from maintainers
@the-kenny did a good job in the past and is set as maintainer in many package,
however since 2017-2018 he stopped contributing. To create less confusion
in pull requests when people try to request his feedback, I removed him as
maintainer from all packages.
2020-05-09 10:28:57 +01:00
Michael Weiss 7d2561cbdd git: 2.26.1 -> 2.26.2 (security, CVE-2020-11008)
See: https://raw.githubusercontent.com/git/git/master/Documentation/RelNotes/2.17.5.txt
2020-04-22 13:54:25 +02:00
Frederik Rietdijk 803b3d296c Merge staging-next into staging 2020-04-21 08:29:51 +02:00
R. RyanTM 9fe2f2565e gitAndTools.gitFull: 2.25.1 -> 2.25.2 2020-04-21 08:14:29 +02:00
James Ottaway fbd29dcbe7 git: 2.25.1 -> 2.26.1
This version addresses CVE-2020-5260.

See https://lore.kernel.org/lkml/xmqqy2qy7xn8.fsf@gitster.c.googlers.com/
2020-04-15 14:23:52 +10:00
Matthew Bauer e520d6af29
Merge pull request #84415 from matthewbauer/mb-cross-fixes-april2020
Cross compilation fixes [april 2020]
2020-04-13 16:48:38 -04:00
Michael Reilly 84cf00f980
treewide: Per RFC45, remove all unquoted URLs 2020-04-10 17:54:53 +01:00
Matthew Bauer d0dbdfea4f git: fix cross compilation 2020-04-06 16:36:14 -04:00
Andrew Childs bc4264a95f git: use tcl/tk from nixpkgs on darwin 2020-03-02 22:29:47 +09:00
Andrew Childs 880ce71f67 Revert "git: Fix git-gui to work on Catalina"
This reverts commit 1b6ef1268f.
2020-03-02 22:29:47 +09:00
Frederik Rietdijk ef156f7a8b Merge staging-next into staging 2020-02-27 10:15:34 +01:00
Peter Hoeg 2ddfc45235
Merge pull request #77071 from peterhoeg/git_emacs_files
git: upstream no longer ships .el files for emacs
2020-02-23 21:16:55 +08:00
Tim Steinbach b2a903a3e7
git: 2.25.0 -> 2.25.1 2020-02-20 08:22:22 -05:00
Dave Nicponski 1b6ef1268f git: Fix git-gui to work on Catalina
The existing post-install was not successfully patching the git-gui script,
and thus was invoking the packaged osx app which uses the system tk,
which is too old to work (and is no longer supported by Apple anyway).
2020-02-10 17:19:26 -05:00
Benjamin Esham 35b403bf12 git: enable zsh completion
Git ships with a zsh completion script, but this script was previously
only available at $out/share/git/contrib/completion/git-completion.zsh,
which is not a path (or a filename) that would be discovered by a
typical zsh installation. This commit symlinks that file to
$out/share/zsh/site-functions/_git, which is a more standard location.

That zsh completion script is mostly a wrapper around the Bash
completion script, so this commit also patches the former so that it can
"find" the latter.
2020-02-09 09:22:20 +01:00
Tim Steinbach a1d7308cf9
git: 2.24.1 -> 2.25.0 2020-01-13 19:22:51 -05:00
Peter Hoeg a15efd8f73 git: upstream no longer ships .el files for emacs 2019-12-31 12:54:25 +08:00
Robin Gloster 2157dcd141
treewide: installFlags is a list 2019-12-30 13:22:43 +01:00
Frederik Rietdijk dfdf1597a7 Merge master into staging-next 2019-12-13 11:43:39 +01:00
Wout Mertens 697b44b631
Merge pull request #75406 from andersk/gitk-completion
git: Install bash-completion symlink for gitk
2019-12-11 15:00:36 +01:00
edef 8fe0c8c351 git: 2.24.0 -> 2.24.1
CVE-2019-1348, CVE-2019-1349, CVE-2019-1350, CVE-2019-1351,
CVE-2019-1352, CVE-2019-1353, CVE-2019-1354, CVE-2019-1387,
CVE-2019-19604

Link: https://lore.kernel.org/git/xmqqr21cqcn9.fsf@gitster-ct.c.googlers.com/
2019-12-11 00:01:06 +00:00
Anders Kaseorg a16dbef1c1 git: Install bash-completion symlink for gitk
Since bash-completion rules are loaded dynamically, the completion
rules for `gitk <Tab>` waere not being loaded until the user first
typed `git <Tab>`.  Fix this by adding a symlink named `gitk`.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2019-12-09 16:09:56 -08:00
Konrad Borowski 6e6b6a7fd5 git: enable some of previously broken tests 2019-11-29 11:28:53 +01:00
Wout Mertens acfa5d8324
Merge pull request #74213 from ruuda/fix-git-perl-support
git: fix the "perlSupport = false" configuration
2019-11-28 21:13:05 +01:00
Jörg Thalheim 8c145dc0fb
git: build with python3
git-p4 seems to be python3 ready:

https://github.com/git/git/blob/master/git-p4.py#L32
2019-11-28 11:29:19 +00:00
Ruud van Asseldonk 2163fc7f0a git: fix the "perlSupport = false" configuration
When perlSupport = false, we will set NO_PERL=1, and build Git without
Perl support. This is a build option that Git supports. However, Git's
test suite still requires a Perl to be available to run the tests, and
we did not provide one. The tests respect PERL_PATH, and if it is not
set, they default to /usr/bin/perl.

Before this commit, if we set "perlSupport = false", then no Perl would
be available to the package, and so the tests would default to
/usr/bin/perl. When building without a sandbox, that could still work,
even though there is no "perl" on the path, because the tests defaulted
to an absolute path.

You can reproduce this issue as follows:

    nix-build -E 'let pkgs = (import ./default.nix) {}; in pkgs.git.override { perlSupport = false; }'

I just ran into this when trying to build pkgs.git from an old version
of Nixpkgs that I was able to build just fine in the past, and today it
would not build any more, complaining when running the tests:

    make -C t/ all
    make[1]: Entering directory '/build/git-2.18.0/t'
    rm -f -r 'test-results'
    /nix/store/czx8vkrb9jdgjyz8qfksh10vrnqa723l-bash-4.4-p23/bin/bash: /usr/bin/perl: No such file or directory

In the past the sandbox was not enabled by default, so then it worked
for me. But now that it is enabled, my host's (not NixOS) /usr/bin/perl
is no longer accessible, and the build fails.

The solution is to explicitly set PERL_PATH when running the tests. This
*almost* works, except that there appears to be a bug in the test for
"git request-pull". That command is a Bash script that calls Perl at
some point, so it requires Perl, and therefore it cannot be supported
when NO_PERL=1. But that particular test does not check whether Git was
compiled with Perl support (other tests do include that check), and that
makes the test fail:

    t5150-request-pull.sh ..............................
    not ok 4 - pull request after push
    not ok 5 - request asks HEAD to be pulled
    not ok 6 - pull request format
    not ok 7 - request-pull ignores OPTIONS_KEEPDASHDASH poison
    not ok 9 - pull request with mismatched object
    not ok 10 - pull request with stale object
    Dubious, test returned 1 (wstat 256, 0x100)
    Failed 6/10 subtests

This output makes sense if you look at t5150-request-pull.sh. Test 1 and
2 are setup steps. Test 3 does call request-pull, but it expects the
command to fail, and it cannot distinguish between the command exiting
with a nonzero exit code, or failing to start it at all. So test 3
passes for the wrong reasons. Test 4 through 10 all call request-pull,
so they fail.

The quick workaround here is to disable the test. I will look into
upstreaming a patch that makes the test skip itself when Perl is
disabled.
2019-11-27 19:23:56 +01:00
Daiderd Jordan 185e30c664
git: disable failing test on darwin
The tests for null patterns where changed in 25754125cef278c7e9492fbd6dc4a28319b01f18,
it's possible utf-8 normalisation is causing different behaviour here.

    not ok 54 - LC_ALL='C' git grep -P -f f -i 'Æ<NUL>[Ð]' a
    not ok 57 - LC_ALL='C' git grep -P -f f -i '[Æ]<NUL>Ð' a
    not ok 60 - LC_ALL='C' git grep -P -f f -i '[Æ]<NUL>ð' a
    not ok 63 - LC_ALL='C' git grep -P -f f -i 'Æ<NUL>Ð' a
    Dubious, test returned 1 (wstat 256, 0x100)
    Failed 4/145 subtests
            (less 48 skipped subtests: 93 okay)
2019-11-22 21:02:21 +01:00
Tim Steinbach 0a9e548b2f
git: 2.23.0 -> 2.24.0 2019-11-04 09:35:15 -05:00
Alyssa Ross 4b63c915af
git: drop extraneous sysconfdir trailing slash
I noticed while strace-ing that Git was trying to open
/etc//gitconfig.  Not a big deal, but it is definitely more correct
without the trailing slash.
2019-11-03 21:26:56 +00:00
Matthew Bauer 0c1cef2f11
Merge pull request #68366 from sorbits/git-bash-completion
Install git’s bash completion so that it is loaded on demand
2019-09-18 09:40:52 -04:00
Allan Odgaard dc45fc4ca2 Install git’s bash completion so that it is loaded on demand
Putting the file in $out/share/bash-completion/completions means that it will be loaded on demand by nixpkgs.bash-completion.

With the old location, the user would either have to explicitly source the file during bash startup, or set BASH_COMPLETION_COMPAT_DIR before sourcing bash_completion.sh, which will eagerly load everything in that directory.
2019-09-09 19:16:29 +02:00
Frederik Rietdijk 5061fe0c2c Merge staging-next into staging 2019-08-28 08:26:42 +02:00
Vladimír Čunát 2e6bf42a22
Merge branch 'master' into staging-next
There ver very many conflicts, basically all due to
name -> pname+version.  Fortunately, almost everything was auto-resolved
by kdiff3, and for now I just fixed up a couple evaluation problems,
as verified by the tarball job.  There might be some fallback to these
conflicts, but I believe it should be minimal.

Hydra nixpkgs: ?compare=1538299
2019-08-24 08:55:37 +02:00
Robin Gloster 4e60b0efae
treewide: update globin's maintained drvs 2019-08-20 19:36:05 +02:00
Izorkin 6da7a17ffb git: 2.22.1 -> 2.23.0 2019-08-18 09:19:42 +03:00
volth c814d72b51 treewide: name -> pname 2019-08-17 10:54:38 +00:00
Tim Steinbach ce1b77231a
git: 2.22.0 -> 2.22.1 2019-08-13 13:58:37 -04:00
Wout Mertens f24e74d159
Merge pull request #53494 from kirelagin/git-instaweb
git, gitweb: Fix git-instaweb
2019-08-04 23:40:16 +02:00
Demin Dmitriy ea688c051d git: remove runtime dependency on gcc
Reduces gitMinimal closure size from 329.6M to 174.8M.

Fixes the issue https://github.com/NixOS/nixpkgs/issues/64350.

In git 2.22.0 git-stash is no longer a shell script and now it is just a symlink to git.
`postInstall` assumed that it was a shell script, tried to patch it and
ended up corrupting the file and made `strip` refuse stripping it.
2019-07-17 10:33:13 +02:00