Patrick Steinhardt
41019152a0
patch_generate: remove duplicated logic
...
Under the existing logic, we try to load patch contents differently,
depending on whether the patch files stem from the working directory or
not. But actually, the executed code paths are completely equal to each
other -- so we were always the code despite the condition.
Remove the condition altogether and conflate both code paths.
2017-03-14 12:04:04 +01:00
Carlos Martín Nieto
53454be87f
Merge pull request #4157 from adamniedzielski/4099-git-sort-time-uninteresting
...
Skip uninteresting commits in revwalk timesort iterator
2017-03-11 19:52:05 +01:00
Carlos Martín Nieto
0b3623ac47
Merge pull request #4156 from libgit2/ethomson/readbuffer_dont_hash
...
git_futils_readbuffer: don't compute sha-1
2017-03-11 19:09:27 +01:00
Edward Thomson
ffd4df6bf2
Merge pull request #4151 from novalis/dturner/rebase-submodule-untracked
...
rebase: ignore untracked files in submodules
2017-03-09 16:32:38 +00:00
Adam Niedzielski
c11c08a552
Skip uninteresting commits in revwalk timesort iterator
...
Fixes #4099
2017-03-09 14:01:10 +01:00
Edward Thomson
11c8e756ac
git_futils_readbuffer: don't compute sha-1
...
Don't compute the sha-1 in `git_futils_readbuffer_updated` unless the
checksum was requested. This means that `git_futils_readbuffer` will
not calculate the checksum unnecessarily.
2017-03-09 12:26:23 +00:00
Edward Thomson
b31b236004
Merge pull request #4154 from libgit2/ethomson/namespaces
...
Support namespaced references again
2017-03-06 15:53:57 +00:00
Edward Thomson
835805625a
refdb_fs: honor the namespace
2017-03-06 14:20:12 +00:00
Edward Thomson
d24ae06d72
refs::namespace: add namespace tests
...
These simple tests only ensure that we enforce the existence of a
namespace; these mirror the rugged tests, they are not exhaustive.
2017-03-06 14:11:00 +00:00
Richard Ipsum
5c06111be6
README: Mention how to run tests
2017-03-05 15:36:19 +00:00
David Turner
2270ca9f8f
rebase: ignore untracked files in submodules
...
An untracked file in a submodule should not prevent a rebase from
starting. Even if the submodule's SHA is changed, and that file would
conflict with a new tracked file, it's still OK to start the rebase
and discover the conflict later.
Signed-off-by: David Turner <dturner@twosigma.com>
2017-03-03 15:07:54 -05:00
Carlos Martín Nieto
467185ff13
Merge pull request #4150 from libgit2/ethomson/freshen_trees
...
git_commit_create: freshen tree objects in commit
2017-03-03 16:12:12 +01:00
Edward Thomson
52d03f37f7
git_commit_create: freshen tree objects in commit
...
Freshen the tree object that a commit points to during commit time.
2017-03-03 14:12:00 +00:00
Carlos Martín Nieto
3348570a0c
Merge pull request #4136 from libgit2/ethomson/sha1dc
...
Introduce (optional) SHA1 collision attack detection
2017-03-03 12:36:36 +01:00
Edward Thomson
9f128d2a77
cmake: drop unset SHA1_TYPE
...
We never set `SHA1_TYPE` to `builtin`. Don't bother testing for it.
2017-03-03 10:50:28 +00:00
Edward Thomson
d087c8f80e
hash: test for sha1 collision attack detection
2017-03-03 10:50:28 +00:00
Edward Thomson
2dfd1294f7
hash: include sha1collisiondetection
...
Include the SHA1 collision attack detection library from
https://github.com/cr-marcstevens/sha1collisiondetection
2017-03-03 10:50:27 +00:00
Edward Thomson
a371a8ae94
hash: rename implementation selection constants
2017-03-03 10:50:27 +00:00
Edward Thomson
1c04a96b25
Honor core.fsyncObjectFiles
2017-03-02 09:11:33 +00:00
Patrick Steinhardt
ba2bc4911d
Merge pull request #4148 from pks-t/pks/fix-haiku-builds
...
cmake: only enable supported compiler warning flags
2017-03-01 14:51:39 +01:00
Patrick Steinhardt
a02e8a3882
cmake: only enable supported compiler warning flags
...
We currently unconditionally enable the "-Wall" and "-Wextra" flags.
Some platforms rely on compilers which do not support these flags,
though. One of these platforms is Haiku, which does not support
"-Wextra" due to being stuck on GCC version 2.
Fix builds on such platforms by adding these flags only if supported by
the compiler.
2017-03-01 13:58:15 +01:00
Patrick Steinhardt
a454641ee8
Merge pull request #4145 from pks-t/pks/refs-create-memleak
...
tests: refs::create: fix memory leak
2017-03-01 08:45:48 +01:00
Patrick Steinhardt
b65a5e9ba9
winhttp: disambiguate error messages when sending requests
2017-03-01 07:58:40 +01:00
Patrick Steinhardt
5aa1f12a81
tests: refs::create: fix memory leak
2017-03-01 07:45:14 +01:00
Patrick Steinhardt
cf8e9a3ad5
Merge pull request #4143 from richardipsum/issue-4094
...
Fix: make reflog include "(merge)" for merge commits
2017-03-01 07:35:44 +01:00
Richard Ipsum
397cf1a1f5
Add test for inclusion of (merge) in reflog
...
This test ensures that the string '(merge)' is included in the reflog
when a merge commit is made.
2017-02-28 22:32:21 +00:00
Edward Thomson
3ac05d1149
win32: don't fsync parent directories on Windows
...
Windows doesn't support it.
2017-02-28 13:29:01 +00:00
Edward Thomson
2a5ad7d0f2
fsync: call it "synchronous" object writing
...
Rename `GIT_OPT_ENABLE_SYNCHRONIZED_OBJECT_CREATION` ->
`GIT_OPT_ENABLE_SYNCHRONOUS_OBJECT_CREATION`.
2017-02-28 13:29:01 +00:00
Edward Thomson
1229e1c4d7
fsync parent directories when fsyncing
...
When fsync'ing files, fsync the parent directory in the case where we
rename a file into place, or create a new file, to ensure that the
directory entry is flushed correctly.
2017-02-28 13:28:36 +00:00
Edward Thomson
5a747e0c6c
git_futils_writebuffer: default only when flags==0
...
Only use defaults for `git_futils_writebuffer` when flags == 0, lest
(1 << 31) be treated as the defaults.
2017-02-28 13:28:36 +00:00
Edward Thomson
eb56ed81af
refdb_fs: optionally fsync packed refs
2017-02-28 13:28:36 +00:00
Edward Thomson
af3dcb0e50
refdb_fs: optionally fsync loose references
2017-02-28 13:28:36 +00:00
Edward Thomson
5312621bd4
git_futils_writebuffer: optionally fsync
...
Add a custom `O_FSYNC` bit (if it's not been defined by the operating
system`) so that `git_futils_writebuffer` can optionally do an `fsync`
when it's done writing.
We call `fsync` ourselves, even on systems that define `O_FSYNC` because
its definition is no guarantee of its actual support. Mac, for
instance, defines it but doesn't support it in an `open(2)` call.
2017-02-28 13:27:50 +00:00
Edward Thomson
1c2c0ae2a4
packbuilder: honor git_object__synchronized_writing
...
Honor `git_object__synchronized_writing` when creating a packfile and
corresponding index.
2017-02-28 13:27:50 +00:00
Edward Thomson
e6ed0d2f03
odb_loose: fsync tests
...
Introduce a simple counter that `p_fsync` implements. This is useful
for ensuring that `p_fsync` is called when we expect it to be, for
example when we have enabled an odb backend to perform `fsync`s when
writing objects.
2017-02-28 13:27:49 +00:00
Edward Thomson
6d3ad7e09e
Add ENABLE_SYNCHRONIZED_OBJECT_CREATION
option
...
Allow users to enable `SYNCHRONIZED_OBJECT_CREATION` with a setting.
2017-02-28 13:27:49 +00:00
Edward Thomson
fc27fe213c
odb_loose: actually honor the fsync option
...
We've had an fsync option for a long time, but it was "ignored".
Stop ignoring it.
2017-02-28 13:27:49 +00:00
Edward Thomson
fc77891f63
git_filebuf: optionally fsync when committing
2017-02-28 13:27:49 +00:00
Richard Ipsum
1255a9ac0c
Fix: make reflog include "(merge)" for merge commits
...
This fixes issue #4094
2017-02-27 23:53:12 +00:00
Edward Thomson
a4b5ac643c
Merge pull request #4138 from richardipsum/symbolic-create-arbitrary-tgt-test
...
tests: Add create__symbolic_with_arbitrary_content
2017-02-26 16:12:30 +00:00
Edward Thomson
55d911d69a
Merge pull request #4142 from pblesi/patch-1
...
Fix minor typos in CONVENTIONS.md
2017-02-26 16:08:00 +00:00
Edward Thomson
6313a20855
Merge pull request #4141 from kainjow/patch-2
...
Fix inet_pton tests triggering an assert in Haiku
2017-02-26 16:01:32 +00:00
Patrick Blesi
c1239e3327
Fix minor typos in CONVENTIONS.md
2017-02-25 23:09:42 -06:00
Kevin Wojniak
4017017740
Fix inet_pton tests triggering an assert in Haiku
...
Haiku will assert in a nightly build if the "dst" input to inet_pton() is NULL.
2017-02-25 10:21:59 -08:00
Richard Ipsum
b84e58f45d
Whitespace and style fixes
...
Use C style comments as per style guide,
and fix mismatching indentation.
2017-02-25 14:18:16 +00:00
Richard Ipsum
d2b3a21f2b
tests: Add create__symbolic_with_arbitrary_content
...
This test ensures that it's possible to create a symbolic ref that
has arbitrary data as its target. It also ensures it's possible
to obtain the target of that symbolic reference from the git_reference
object.
2017-02-25 14:18:16 +00:00
Edward Thomson
7143145f2f
Merge pull request #4137 from libgit2/ethomson/appveyor
...
appveyor: don't rewrite the system mingw
2017-02-25 12:45:14 +00:00
Edward Thomson
408a7b7737
appveyor: don't rewrite system mingw
...
Download mingw-w64 into our build directory and execute it there, don't
try to overwrite the system's mingw.
2017-02-24 20:25:45 +00:00
Edward Thomson
c3abb1d261
appveyor: always build the 'appveyor' branch
...
The 'appveyor' branch is useful for testing AppVeyor builds.
2017-02-24 17:39:01 +00:00
Patrick Steinhardt
7f875fb4f6
Merge pull request #4133 from stinb/khash-cleanup-regression
...
fix regression from #4092
2017-02-24 08:51:50 +01:00