Log

Author Commit Date CI Message
Edward Thomson 3cbaa587 2015-02-27T04:39:54 rebase: check alloc result
Carlos Martín Nieto 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
Jeff Hostetler c92987d1 2015-02-20T10:21:32 Fix MAX 32 bit build problem described in libgit2/libgit2#2917
Carlos Martín Nieto 5091aff7 2015-02-20T08:40:40 Merge pull request #2907 from jasonhaslam/git_packfile_unpack_race Fix race in git_packfile_unpack.
Carlos Martín Nieto d15884ce 2015-02-19T20:39:20 Merge pull request #2911 from ethomson/streaming_filters Streaming filters
Edward Thomson 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.
Edward Thomson 9c9aa1ba 2015-02-19T11:32:55 filter: take `temp_buf` in `git_filter_options`
Edward Thomson 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`.
Edward Thomson 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*.
Edward Thomson 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.
Carlos Martín Nieto 818302c8 2015-02-19T11:19:17 Merge pull request #2820 from leoyanggit/mac_build Fix Mac build without OpenSSL
Edward Thomson b49edddc 2015-02-18T09:40:52 checkout: let the stream writer close the fd
Edward Thomson f7c0125f 2015-02-18T09:28:07 filter streams: base -> parent
Edward Thomson b75f15aa 2015-02-18T09:25:32 git_writestream: from git_filter_stream
Edward Thomson 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.
Edward Thomson 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.
Edward Thomson e78f5c9f 2015-01-22T16:11:36 checkout: stream the blob into the filters Use the new streaming filter API during checkout.
Edward Thomson 5555696f 2015-01-22T16:11:22 filters: stream internally Migrate the `git_filter_list_apply_*` functions over to using the new filter streams.
Leo Yang 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.
Edward Thomson 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.
Carlos Martín Nieto 437ba9ad 2015-02-16T03:14:32 Merge pull request #2909 from stewid/remove_extra_semicolon Remove extra semicolon outside of a function
Stefan Widgren 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.
Jason Haslam 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.
Carlos Martín Nieto a291790a 2015-02-15T05:18:01 Merge pull request #2831 from ethomson/merge_lock merge: lock index during the merge (not just checkout)
Carlos Martín Nieto a7fa970f 2015-02-15T05:13:50 Merge pull request #2895 from ethomson/alloc_overflow allocations: test for overflow of requested size
Carlos Martín Nieto b23c206e 2015-02-15T05:03:51 Merge pull request #2903 from ethomson/rebase Fixups for rebase
Edward Thomson 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.
Edward Thomson be8404a7 2015-02-03T21:51:48 merge-like operations: lock index while working
Edward Thomson 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.
Edward Thomson 8639ea5f 2015-01-17T22:47:03 checkout: introduce GIT_CHECKOUT_DONT_WRITE_INDEX
Edward Thomson 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).
Edward Thomson 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.
Edward Thomson 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`.
Edward Thomson 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`.
Edward Thomson 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.
Carlos Martín Nieto 57f45e7f 2015-02-13T15:58:39 Merge pull request #2901 from ethomson/win32_mode_bits win32: limit the mode to `_wopen`/`_waccess`
Edward Thomson 0f07d54b 2015-02-13T09:35:20 pack-objects: unlock the cache on integer overflow
Edward Thomson d97d9559 2015-02-12T23:56:09 buf test: cleanup memory leak
Edward Thomson 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.
Edward Thomson 8aab36a3 2015-02-12T22:14:53 filebuf: use an int for return check
Edward Thomson 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.
Edward Thomson 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)
Carlos Martín Nieto 0b2ee7c0 2015-02-13T08:56:01 Merge pull request #2883 from urkud/reget-reader-pointer Reinit `reader` pointer after reading included config file
Carlos Martín Nieto 3ca91107 2015-02-13T08:30:21 Merge pull request #2897 from leoyanggit/fix_fileop_warning Fix build warning on Android
Edward Thomson 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`.
Edward Thomson 1ad48c8a 2015-02-11T17:36:57 khash: update to klib f28c067
Edward Thomson 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.
Edward Thomson 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`.
Edward Thomson 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.
Edward Thomson 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.
Edward Thomson 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.
Edward Thomson 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.)
Edward Thomson 15d54fdd 2015-02-10T22:34:03 odb__hashlink: check st.st_size before casting
Edward Thomson 392702ee 2015-02-09T23:41:13 allocations: test for overflow of requested size Introduce some helper macros to test integer overflow from arithmetic and set error message appropriately.
Leo Yang 3556a82a 2015-02-09T17:35:25 Fix build warning on Android Always do a time_t cast on st_mtime. st_mtime on Android is not the type of time_t but has the same meaning which is the number of seconds past epoch.
Edward Thomson de84d9b4 2015-02-12T16:34:01 Merge pull request #2899 from libgit2/jamill/rebase_opt_ver_check Check rebase options version on public entry points
Yury G. Kudryashov 17136538 2015-02-05T23:39:59 Reinit `reader` pointer after reading included config file Fixes #2869. If included file includes more files, it may reallocate cfg_file->readers, hence invalidate not only `r` pointer, but `result` pointer as well.
Yury G. Kudryashov 3ea78f24 2015-02-09T19:40:22 Add test for include.path inside included config It fails at least on my computer, though it may depend on some unpredictable factors (say, will realloc() extend the memory segment in place, or it will allocate new memory).
Jameson Miller 02eb1495 2015-02-12T15:32:52 Check rebase options version on public entry points
Carlos Martín Nieto d24a5312 2015-02-12T02:34:58 Merge pull request #2866 from ethomson/checkout_perf2 Checkout performance
Carlos Martín Nieto 8e29ae73 2015-02-12T00:43:01 Merge pull request #2862 from jeffhostetler/jeffhostetler/bug/branch_create_after_namespace Remove stale reflog namespace directory before branch creation
Carlos Martín Nieto e07c1e1a 2015-02-12T00:40:12 Merge pull request #2880 from ethomson/mkdir_root Ensure we can make a repo at the root of the filesystem
Carlos Martín Nieto 5a2a5771 2015-02-12T00:34:48 Merge pull request #2845 from rakuco/libssh2-detection-fix Add libssh2's library and include directories.
Carlos Martín Nieto 6dbbced2 2015-02-12T00:27:17 Merge pull request #2889 from jeffhostetler/jeffhostetler/merge_performance Large merge perf test.
Carlos Martín Nieto 5820edc1 2015-02-11T23:59:16 Merge pull request #2894 from ethomson/copyrights Update some third-party copyrights
Carlos Martín Nieto dc63c049 2015-02-11T23:44:05 Merge pull request #2893 from phatblat/ben/pr/doc-comments Fix doc comment formatting
John Haley a36486ef 2015-02-11T10:31:54 Fixed error when including git2/include/sys/stream.h
Edward Thomson 0b55ed95 2015-02-10T15:14:49 clar: use actual license and copyright
Edward Thomson ec510666 2015-02-10T15:10:32 Credit utf8proc for utf8 iterator
Ben Chatelain c03e8c22 2015-02-10T12:44:05 Use correct Doxygen trailing comment syntax
Ben Chatelain ec7e1c93 2015-02-10T08:31:48 Fix doc comment formatting
nulltoken b703049c 2015-02-06T23:24:50 Merge pull request #2890 from arthurschreiber/patch-5 Speed up AppVeyor builds.
Arthur Schreiber 554063a5 2015-02-06T23:12:58 Speed up AppVeyor builds. AppVeyor build machines come with Python 2.7 and CMake 2.8 pre-installed and in the PATH.
Jeff Hostetler d97ba7f6 2015-02-06T15:45:59 Large merge perf test.
Edward Thomson 3db1b15e 2015-02-05T20:01:56 Merge pull request #2884 from libgit2/cmn/template-path repository: parse init.templatedir as a path
Carlos Martín Nieto cc36f424 2015-02-06T01:09:26 repository: parse init.templatedir as a path This is a path so we must use the path getter so we get the tilde expansion done.
Edward Thomson bebd2017 2015-02-05T14:10:25 Merge pull request #2881 from ethomson/clar Update clar to d17c7f6
Edward Thomson 83276dcc 2015-02-05T13:24:38 Update clar to d17c7f6
Edward Thomson 9cb5b0f7 2015-02-04T23:45:22 mkdir: respect the root path Don't try to strip trailing paths from the root directory on Windows (trying to create `C:` will fail).
Edward Thomson 3c68bfcd 2015-02-04T18:24:31 stat: don't remove trailing '/' from root on win32 `p_stat` calls `git_win32_path_from_utf8`, which canonicalizes the path. Do not further try to modify the path, else we trim the trailing slash from a root directory and try to access `C:` instead of `C:/`.
Edward Thomson 2f4ee000 2015-02-05T11:55:00 appveyor: include the invasive filesystem tests
Edward Thomson 865baaf9 2015-02-05T11:06:01 repo: ensure we can create repo at filesystem root Test to ensure that we can create a repository at the filesystem root. Introduces a new test environment variable, `GITTEST_INVASIVE_FILESYSTEM` for tests that do terrible things like escaping the clar sandbox and writing to the root directory. It is expected that the CI builds will enable this but that normal people would not want this.
Edward Thomson 9bf5bd7c 2015-02-05T09:19:46 Merge pull request #2867 from ethomson/8dot3 Handle 8dot3 filenames being disabled on Win32
Edward Thomson 3dc92940 2015-02-05T09:18:47 Merge pull request #2875 from JIghtuse/master for-each-ref example: initialize libgit2 in main
Boris Egorov 2107dac3 2015-02-04T15:14:18 for-each-ref example: init/shutdown libgit2 in main I don't get how it was working without git_libgit2_init() call. I run it and libgit2 throws assertion somewhere in its internals. Now it works. Updated commit with shutdown at the end.
Edward Thomson 3983935b 2015-02-04T16:11:15 Merge pull request #2872 from ethomson/pedantic Fixes for pedantry
Edward Thomson a2e4593e 2015-02-03T18:41:40 hash_generic: __extension__ keyword for pedantry
Edward Thomson 0cd479ab 2015-02-04T09:24:49 Merge pull request #2874 from modocache/add-gift README.md: Add Swift bindings "Gift"
Edward Thomson fa89ff20 2015-02-03T05:35:24 remove some unused warnings
Edward Thomson 500ec543 2015-02-03T01:46:01 checkout: hold seen dir paths in a map
Edward Thomson f58cc280 2015-02-03T00:28:32 attr_session: keep a temp buffer
Edward Thomson d4b1b767 2015-02-03T00:03:49 checkout: cache system attributes file location
Carlos Martín Nieto 505d5b8a 2015-02-04T12:54:57 Merge pull request #2873 from ethomson/structinit structinit test: use %PRIuZ instead of %d for size_t
Brian Gesiak 35425b51 2015-02-04T01:06:07 README.md: Add Swift bindings "Gift"
Edward Thomson f45f9b6d 2015-02-04T03:52:34 structinit test: use %PRIuZ instead of %d for size_t
Edward Thomson f9e7abcb 2015-02-03T21:44:15 Merge pull request #2870 from urkud/log-libssh-not-found Tell user if libssh was not found
Edward Thomson 573a53a8 2015-02-03T21:19:21 Merge pull request #2861 from libgit2/ntk/appveyor AppVeyor: Prettify build script
Edward Thomson 07c989e9 2015-02-03T20:01:24 win32: further cleanups for 8.3 disabling
Edward Thomson 710f66af 2015-02-03T18:41:15 bswap: remove unused bswap
Yury G. Kudryashov e15a0849 2015-02-04T00:15:11 Tell user if libssh was not found Fixes #2665