|
83fe60fa
|
2015-03-03T14:10:50
|
|
libgit2_shutdown: clear err message on shutdown
Clear the error message on git_libgit2_shutdown for all versions of
the library (no threads and Win32 threads). Drop the giterr_clear
in clar, as that shouldn't be necessary.
|
|
3a8b69d1
|
2015-02-26T11:47:07
|
|
Fix leak of TLS error message in shutdown (ptherad version)
|
|
814d86bf
|
2015-03-04T14:32:23
|
|
Merge pull request #2886 from jeffhostetler/jeffhostetler/clar_trace
Set up git_trace in clar test suite.
|
|
c69c042e
|
2015-03-04T12:47:59
|
|
Merge pull request #2945 from ethomson/empty_hashsig_heap
diff_tform: don't compare empty hashsig_heaps
|
|
f78d9b6c
|
2015-03-03T23:56:54
|
|
diff_tform: account for whitespace options
When comparing seemingly blank files, take whitespace options into
account.
|
|
fe21d708
|
2015-03-04T00:29:37
|
|
Plug a few leaks
|
|
a212716f
|
2015-03-03T18:19:42
|
|
diff_tform: don't compare empty hashsig_heaps
Don't try to compare two empty hashsig_heaps.
|
|
9ce97782
|
2015-03-03T17:59:44
|
|
Merge pull request #2941 from libgit2/cmn/http-enforce-cred
http: enforce the credential types
|
|
f438dbe1
|
2015-03-03T17:59:20
|
|
Merge pull request #2771 from libgit2/cmn/config-borrow-entry
Borrowing configuration entries
|
|
9a97f49e
|
2014-12-21T15:31:03
|
|
config: borrow refcounted references
This changes the get_entry() method to return a refcounted version of
the config entry, which you have to free when you're done.
This allows us to avoid freeing the memory in which the entry is stored
on a refresh, which may happen at any time for a live config.
For this reason, get_string() has been forbidden on live configs and a
new function get_string_buf() has been added, which stores the string in
a git_buf which the user then owns.
The functions which parse the string value takea advantage of the
borrowing to parse safely and then release the entry.
|
|
e892b6a9
|
2015-03-03T17:23:01
|
|
http: enforce the credential types
The user may decide to return any type of credential, including ones we
did not say we support. Add a check to make sure the user returned an
object of the right type and error out if not.
|
|
76f03418
|
2015-03-03T17:04:38
|
|
Remove swp files
|
|
20273e4d
|
2015-03-03T10:08:51
|
|
Merge pull request #2934 from akikoskinen/mingw_build_fix
Fix build on mingw (master branch)
|
|
018fdbb5
|
2015-03-03T10:08:28
|
|
Merge pull request #2913 from ethomson/stash_fixup
stash: correctly stash wd modified/index deleted
|
|
72ca65d5
|
2015-03-03T10:07:36
|
|
Merge pull request #2808 from libgit2/cmn/repo-ident
Remove the signature from ref-modifying functions
|
|
e5cf1c70
|
2015-03-03T09:57:50
|
|
Converted cl_perf_timer to use git__timer internally.
|
|
41513659
|
2015-02-06T23:46:23
|
|
Update CHANGELOG with the reflog ident changes
|
|
4e498646
|
2015-01-15T16:50:31
|
|
repository: remove log message override for switching the active branch
We want to use the "checkout: moving from ..." message in order to let
git know when a change of branch has happened. Make the convenience
functions for this goal write this message.
|
|
412a3808
|
2015-01-15T15:31:23
|
|
push: remove reflog message override
We always use "update by push".
|
|
6bfb990d
|
2015-01-07T14:47:02
|
|
branch: don't accept a reflog message override
This namespace is about behaving like git's branch command, so let's do
exactly that instead of taking a reflog message.
This override is still available via the reference namespace.
|
|
23a17803
|
2015-01-07T14:16:50
|
|
reset: remove reflog message override
This function is meant to simulate what git does in the reset command,
so we should include the reflog message in that.
|
|
659cf202
|
2015-01-07T12:23:05
|
|
Remove the signature from ref-modifying functions
The signature for the reflog is not something which changes
dynamically. Almost all uses will be NULL, since we want for the
repository's default identity to be used, making it noise.
In order to allow for changing the identity, we instead provide
git_repository_set_ident() and git_repository_ident() which allow a user
to override the choice of signature.
|
|
fe477951
|
2015-03-03T14:35:10
|
|
Merge pull request #2885 from JIghtuse/master
describe example: function to add commits to opts
|
|
99b68a2a
|
2015-03-03T13:47:13
|
|
Merge pull request #2908 from ethomson/safe_create
Allow checkout to handle newly cloned repositories, remove `GIT_CHECKOUT_SAFE_CREATE`
|
|
31bc6c04
|
2015-03-03T13:25:40
|
|
branch: do capture the error code
We want to ignore GIT_ENOTFOUND, but for that we need to capture the
error code from the reflog deletion.
|
|
5ac2b7cb
|
2015-03-03T13:03:54
|
|
Merge pull request #2937 from git-up/branch_delete_reflog
git_branch_delete() should ignore errors from non-existing reflogs
|
|
bf410446
|
2015-03-02T21:03:57
|
|
Merge pull request #2935 from ethomson/dll_patchlevel
win32: add the patch level to the .dll fileversion
|
|
79863917
|
2015-03-02T10:24:54
|
|
git_branch_delete() should ignore errors from non-existing reflogs
|
|
bf1476f1
|
2015-03-02T10:35:26
|
|
win32: add the patch level to the .dll fileversion
Win32 DLLs have four fields for the version number (major, minor,
teeny, patch). If a consumer wants to build a custom DLL, it may
be useful to set the patchlevel version number in the DLL.
This value only affects the DLL version number, it does not affect
the resultant "version number", which remains major.minor.teeny.
|
|
9a859ef5
|
2015-03-02T09:21:55
|
|
Added cl_perf_timer. Updated global trace to include timers.
|
|
f096fbf4
|
2015-03-02T08:34:02
|
|
Cleanup formatting of clar trace messages.
|
|
6b5c0886
|
2015-02-13T16:58:14
|
|
Provide mechanism to let CLAR globally setup git_trace()
|
|
45df2237
|
2015-02-27T10:53:39
|
|
Include ws2tcpip.h in order to get in6_addr
It's currently required in src/openssl_stream.c only.
|
|
ec032442
|
2015-02-27T10:49:02
|
|
Include openssl headers last
Windows headers #define some names that openssl uses too. Openssl
headers #undef the offending names before reusing them. But if those
offending Windows headers get included after the openssl headers the
namespace is polluted and nothing good happens.
Fixes issue #2850.
|
|
a944c6cc
|
2015-03-02T11:08:04
|
|
Don't include headers on windows that aren't available
This mainly concerns mingw build.
|
|
c23002c5
|
2015-03-01T21:04:51
|
|
Merge pull request #2929 from ethomson/clar_update
Update to clar 2b73f5e
|
|
18fcb5c8
|
2015-03-01T21:00:11
|
|
Merge pull request #2928 from ethomson/rebase_alloc_check
rebase: check alloc result
|
|
496b76d4
|
2015-02-27T11:02:37
|
|
checkout tests: just use SAFE where appropriate
|
|
96b82b11
|
2015-02-14T11:44:05
|
|
checkout: remove `GIT_CHECKOUT_SAFE_CREATE` as a strategy
|
|
14fec0ae
|
2015-02-14T12:10:00
|
|
example: drop `SAFE_CREATE` from clone example
|
|
6c9e86ad
|
2015-02-14T10:46:41
|
|
clone: drop now unnecessary SAFE_CREATE
|
|
e6da3e44
|
2015-02-14T10:33:06
|
|
checkout: upgrade to `SAFE_CREATE` when no index file
When the repository does not contain an index, emulate git's behavior
and upgrade to `SAFE_CREATE`. This allows us to check out repositories
created with `git clone --no-checkout`.
|
|
5cbe950f
|
2015-02-14T10:45:01
|
|
merge perf test: drop unnecessary SAFE_CREATE
|
|
094cfc29
|
2015-02-14T10:03:29
|
|
cherrypick, revert: drop unnecessary SAFE_CREATE
|
|
fb2f3a76
|
2015-02-27T00:37:20
|
|
Merge pull request #2922 from ethomson/more_explaining_threads_is_more_better
README: provide some more explanation about TLS
|
|
cfcb346d
|
2015-02-27T00:30:50
|
|
Update to clar 2b73f5e
|
|
3cbaa587
|
2015-02-27T04:39:54
|
|
rebase: check alloc result
|
|
ecf1c3c3
|
2015-02-23T11:18:52
|
|
README: provide some more explanation about TLS
|
|
366e53d3
|
2015-02-20T19:40:45
|
|
Merge pull request #2921 from libgit2/ntk/macosx_build_cherrypicked
Fix MAX 32 bit build problem described in libgit2/libgit2#2917
|
|
c92987d1
|
2015-02-20T10:21:32
|
|
Fix MAX 32 bit build problem described in libgit2/libgit2#2917
|
|
5091aff7
|
2015-02-20T08:40:40
|
|
Merge pull request #2907 from jasonhaslam/git_packfile_unpack_race
Fix race in git_packfile_unpack.
|
|
d15884ce
|
2015-02-19T20:39:20
|
|
Merge pull request #2911 from ethomson/streaming_filters
Streaming filters
|
|
feb0e022
|
2015-02-19T12:14:06
|
|
tests: separate INVASIVE filesystem tests
Introduce GITTEST_INVASIVE_FS_STRUCTURE for things that are invasive
to your filesystem structure (like creating folders at your filesystem
root) and GITTEST_INVASIVE_FS_SIZE for things that write lots of data.
|
|
9c9aa1ba
|
2015-02-19T11:32:55
|
|
filter: take `temp_buf` in `git_filter_options`
|
|
d05218b0
|
2015-02-19T11:25:26
|
|
filter: add `git_filter_list__load_ext`
Refactor `git_filter_list__load_with_attr_reader` into
`git_filter_list__load_ext`, which takes a `git_filter_options`.
|
|
795eaccd
|
2015-02-19T11:09:54
|
|
git_filter_opt_t -> git_filter_flag_t
For consistency with the rest of the library, where an opt is an
options *structure*.
|
|
d4cf1675
|
2015-02-19T10:05:33
|
|
buffer: introduce git_buf_attach_notowned
Provide a convenience function that creates a buffer that can be provided
to callers but will not be freed via `git_buf_free`, so the buffer
creator maintains the allocation lifecycle of the buffer's contents.
|
|
818302c8
|
2015-02-19T11:19:17
|
|
Merge pull request #2820 from leoyanggit/mac_build
Fix Mac build without OpenSSL
|
|
09866d6f
|
2015-02-18T11:26:03
|
|
stash: correctly stash wd modified/index deleted
|
|
b49edddc
|
2015-02-18T09:40:52
|
|
checkout: let the stream writer close the fd
|
|
f7c0125f
|
2015-02-18T09:28:07
|
|
filter streams: base -> parent
|
|
b75f15aa
|
2015-02-18T09:25:32
|
|
git_writestream: from git_filter_stream
|
|
8c2dfb38
|
2015-02-17T13:27:06
|
|
filter: test a large file through the stream
Test pushing a file on-disk into a streaming filter that compresses
it into the ODB, and inflates it back into the working directory.
|
|
646364e7
|
2015-02-17T20:25:31
|
|
checkout: maintain temporary buffer for filters
Let the filters use the checkout data's temporary buffer, instead
of having to allocate new buffers each time.
|
|
e78f5c9f
|
2015-01-22T16:11:36
|
|
checkout: stream the blob into the filters
Use the new streaming filter API during checkout.
|
|
5555696f
|
2015-01-22T16:11:22
|
|
filters: stream internally
Migrate the `git_filter_list_apply_*` functions over to using the
new filter streams.
|
|
2d2aa1ff
|
2015-02-13T17:28:35
|
|
Fix Mac build without OpenSSL
If OpenSSL is disabled on Mac the SHA1 implementation goes
to the CommonCrypto from the system. In this case we should
not include the generic hash impl. Otherwise there would be
duplicated impls which fail the build.
|
|
fbdc9db3
|
2015-01-22T16:10:06
|
|
filters: introduce streaming filters
Add structures and preliminary functions to take a buffer, file or
blob and write the contents in chunks through an arbitrary number
of chained filters, finally writing into a user-provided function
accept the contents.
|
|
437ba9ad
|
2015-02-16T03:14:32
|
|
Merge pull request #2909 from stewid/remove_extra_semicolon
Remove extra semicolon outside of a function
|
|
c8e02b87
|
2015-02-15T21:07:05
|
|
Remove extra semicolon outside of a function
Without this change, compiling with gcc and pedantic generates warning:
ISO C does not allow extra ‘;’ outside of a function.
|
|
8588cb0c
|
2015-02-14T23:43:26
|
|
Fix race in git_packfile_unpack.
Increment refcount of newly added cache entries just like existing
entries looked up from the cache. Otherwise the new entry can be
evicted from the cache and destroyed while it's still in use.
|
|
a291790a
|
2015-02-15T05:18:01
|
|
Merge pull request #2831 from ethomson/merge_lock
merge: lock index during the merge (not just checkout)
|
|
a7fa970f
|
2015-02-15T05:13:50
|
|
Merge pull request #2895 from ethomson/alloc_overflow
allocations: test for overflow of requested size
|
|
b23c206e
|
2015-02-15T05:03:51
|
|
Merge pull request #2903 from ethomson/rebase
Fixups for rebase
|
|
41fae48d
|
2015-02-03T22:31:10
|
|
indexwriter: an indexwriter for repo operations
Provide git_indexwriter_init_for_operation for the common locking
pattern in merge, rebase, revert and cherry-pick.
|
|
be8404a7
|
2015-02-03T21:51:48
|
|
merge-like operations: lock index while working
|
|
8b0ddd5d
|
2015-01-17T23:28:53
|
|
merge: lock the index at the start of the merge
Always lock the index when we begin the merge, before we write
any of the metdata files. This prevents a race where another
client may run a commit after we have written the MERGE_HEAD but
before we have updated the index, which will produce a merge
commit that is treesame to one parent. The merge will finish and
update the index and the resultant commit would not be a merge at
all.
|
|
8639ea5f
|
2015-01-17T22:47:03
|
|
checkout: introduce GIT_CHECKOUT_DONT_WRITE_INDEX
|
|
55798fd1
|
2015-01-17T20:49:04
|
|
git_indexwriter: lock then write the index
Introduce `git_indexwriter`, to allow us to lock the index while
performing additional operations, then complete the write (or abort,
unlocking the index).
|
|
42f98a26
|
2015-01-17T23:31:24
|
|
merge test: test an actual failure, not conflict
Correct the merge failed cleanup test. Merge data should not be
cleaned up on conflicts, only on actual failure. And ORIG_HEAD
should not be removed at all.
|
|
ffbd51ed
|
2015-02-13T11:38:00
|
|
rebase: `CHECKOUT_SAFE` instead of `FORCE`
Switch to a standard branch-switching pattern of a `SAFE` checkout,
then updating `HEAD`.
|
|
49b8293c
|
2015-02-13T11:20:32
|
|
rebase: allow `NULL` branch to indicate `HEAD`
Don't require the branch to rebase, if given `NULL`, simply look up
`HEAD`.
|
|
92e87dd7
|
2015-02-13T10:44:19
|
|
rebase: provide NULL `exec` on non-EXEC operations
Users may want to try to pay attention to the `exec` field on all
rebase operations.
|
|
57f45e7f
|
2015-02-13T15:58:39
|
|
Merge pull request #2901 from ethomson/win32_mode_bits
win32: limit the mode to `_wopen`/`_waccess`
|
|
0f07d54b
|
2015-02-13T09:35:20
|
|
pack-objects: unlock the cache on integer overflow
|
|
d97d9559
|
2015-02-12T23:56:09
|
|
buf test: cleanup memory leak
|
|
16942c6f
|
2015-02-12T17:36:48
|
|
integer overflow: use compiler intrinsics if supported
gcc and clang support __builtin_add_overflow, use it whenever
possible, falling back to our naive routines.
|
|
8aab36a3
|
2015-02-12T22:14:53
|
|
filebuf: use an int for return check
|
|
f1453c59
|
2015-02-12T12:19:37
|
|
Make our overflow check look more like gcc/clang's
Make our overflow checking look more like gcc and clang's, so that
we can substitute it out with the compiler instrinsics on platforms
that support it. This means dropping the ability to pass `NULL` as
an out parameter.
As a result, the macros also get updated to reflect this as well.
|
|
527ed59a
|
2015-02-13T09:18:49
|
|
win32: limit the mode to `_wopen`/`_waccess`
Win32 generally ignores Unix-like mode bits that don't make any
sense on the platform (eg `0644` makes no sense to Windows). But
WINE complains loudly when presented with POSIXy bits. Remove them.
(Thanks @phkelley)
|
|
0b2ee7c0
|
2015-02-13T08:56:01
|
|
Merge pull request #2883 from urkud/reget-reader-pointer
Reinit `reader` pointer after reading included config file
|
|
3ca91107
|
2015-02-13T08:30:21
|
|
Merge pull request #2897 from leoyanggit/fix_fileop_warning
Fix build warning on Android
|
|
650e45f6
|
2015-02-11T17:51:17
|
|
Update `khash.h` to pull request 42
https://github.com/attractivechaos/klib/pull/42/files introduces
`kreallocarray`. Hook that up as our `git__reallocarray`.
|
|
1ad48c8a
|
2015-02-11T17:36:57
|
|
khash: update to klib f28c067
|
|
190b76a6
|
2015-02-11T14:52:08
|
|
Introduce git__add_sizet_overflow and friends
Add some helper functions to check for overflow in a type-specific
manner.
|
|
8d534b47
|
2015-02-11T13:01:00
|
|
p_read: ensure requested len is ssize_t
Ensure that the given length to `p_read` is of ssize_t and ensure
that callers test the return as if it were an `ssize_t`.
|
|
ec3b4d35
|
2015-02-11T11:20:05
|
|
Use `size_t` to hold size of arrays
Use `size_t` to hold the size of arrays to ease overflow checking,
lest we check for overflow of a `size_t` then promptly truncate
by packing the length into a smaller type.
|
|
2884cc42
|
2015-02-11T09:39:38
|
|
overflow checking: don't make callers set oom
Have the ALLOC_OVERFLOW testing macros also simply set_oom in the
case where a computation would overflow, so that callers don't
need to.
|
|
4aa664ae
|
2015-02-10T23:55:07
|
|
git_buf_grow_by: increase buf asize incrementally
Introduce `git_buf_grow_by` to incrementally increase the size of a
`git_buf`, performing an overflow calculation on the growth.
|
|
3603cb09
|
2015-02-10T23:13:49
|
|
git__*allocarray: safer realloc and malloc
Introduce git__reallocarray that checks the product of the number
of elements and element size for overflow before allocation. Also
introduce git__mallocarray that behaves like calloc, but without the
`c`. (It does not zero memory, for those truly worried about every
cycle.)
|